       grunt.task.run 'growl:jasmine_failure'
       done false
 
+  grunt.registerTask 'npm:install', 'Run npm tests', ->
+    done = @async()
+    run('npm install')
+    .then ->
+      console.log "Package installed #{'✓'.green}"
+      done true
+    .fail (reason) ->
+      console.log reason
+      done false
+
   grunt.registerTask('all', [
     'coffee:glob_to_multiple'
     'coffee:build'
     'uglify'
-    'test'
+    'npm:test'
     'biscotto'
     'coffee:demos'
     'extend:biscotto'

        options:
          reload: true

    growl:
      jasmine_success:
        title: 'Jasmine Tests'
        message: 'All test passed'

      jasmine_failure:
        title: 'Jasmine Tests'

    .fail ->
      done()

  grunt.registerTask 'npm:test', 'Run npm tests', ->
    done = @async()
    run('npm test')
    .then ->
