
###
Installer
###

Q        = require('q')
{ exec } = require('child_process')

module.exports = (dir, callback) ->

  deferred = Q.defer()

  cmd = [
    'npm install'
    './node_modules/bower/bin/bower install'
  ].join(' && ')

  exec cmd, cwd: dir, (err, stdout, stderr) ->
    deferred.reject(new Error(err)) if err
    deferred.resolve(installer: true)
    do callback if callback

  deferred.promise

