Grunt tasks for compiling applications with Forge.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Help run forge to compile and run apps.


Add the following to your package.json.

  "grunt-forge": "git://",

Add the following to your grunt.js.




  forge: {
    ios_build: {
      cwd: 'app',
      args: ['build', 'ios'],
      options: {
        username: '',
        password: 'your_trigger_password'
    ios_sim: { args: ['run', 'ios'] },
    ios_device: { args: ['run', 'ios', '--ios.device', 'device'] },
    ios_package: { args: ['package', 'ios'] }



You can add whatever tasks you want. It doesn't do anything special other than chain the arguments together and run forge in the directory specified by cwd.

You only need to add the username and password options if their prompts appear when you run forge manually. If the username and password prompts don't appear, it means your machine stored your login cookies at the TriggerToolkit directory (inside build-tools dir).


Many of the forge messages are filtered by default and you are left only with the logging messages. You can disable this by setting verbose:true as an option.


Create shortcut tasks by giving common tasks easy names.

grunt.registerTask("build", 'coffee compass copy forge:ios_build');
grunt.registerTask("sim", 'build forge:ios_sim');
grunt.registerTask("device", 'build forge:ios_device');
grunt.registerTask("package", 'build forge:ios_package');


The tasks add a bit of color to the output. It also eliminates some noise, and tries to reduce the amount of output tto a more manageable amount. If you're not seeing some output, keep that in mind.

As an example, it strips out some device specific path information and leave the more important bits.