Are you tired of repeating yourself when building web sites? volo is a tool which lets you quickly create projects, add libraries, and automate common tasks using node and JavaScript.

Get started now:

npm install -g volo

Create

Use a zipball from an existing GitHub repo, URL, or a local file path as a template for your new project.
Create 'foo' project with volo's default template
volo create foo
Create 'foo' from h5bp/html5-boilerplate v4.0.0 GitHub zipball
volo create foo h5bp/html5-boilerplate/4.0.0
Create 'foo' from zipball URL
volo create foo http://mozilla.github.com/mortar/builds/app-stub.zip

Add

Quickly add javascript libraries by using a search term, GitHub identifier, or raw URL.
Queries github for 'jquery', then downloads latest version
volo add jquery
Adds backbone as well as underscore and jquery
volo add backbone
Uses semver to add latest 2.x version of requirejs
volo add requirejs/~2
Add the amdjs github group's version of backbone
volo add amdjs/backbone

Automate

Quickly code up project automation using a volofile and JavaScript. Reuse automation commands by publishing/installing from npm.
Simple automation: Create a volofile in your project's top-level directory. This file is just a node module that defines a property for each automation task. npm install reusable command line functions.
npm install local tools to use in volofile
npm install jshint uglify-js
Simple volofile that cleans, lints and uglifies
module.exports = {
  clean: {
      summary: 'removes a.min.js',
      run: 'v.rm a.min.js'
  },
  lint: {
      summary: 'runs jshint on a.js',
      run: 'n.jshint a.js'
  },
  uglify: {
      summary: 'minifies a.js to a.min.js',
      depends: ['clean', 'lint'],
      run: 'n.uglifyjs -o a.min.js a.js'
  }
};
Deploy straight to github: If your site is all client-side, you can publish to github with one command. Your site is live within seconds.
Install the reusable volofile command, volo-ghdeploy
npm install volo-ghdeploy
Add an entry to your project's volofile to use it
module.exports = {
  ghdeploy: require('volo-ghdeploy')('built', 'deployed')
}
Now deploying to GitHub is a single command
volo ghdeploy
Manage the appcache: Make or update an appcache with one simple command. Never worry about adding files or changing the appcache version again.
Install the reusable volofile command, volo-appcache
npm install volo-appcache
Add an entry to your project's volofile to use it
module.exports = {
  appcache: require('volo-appcache')({
    dir: 'www-built'
  })
}
Now generating the appcache is a single command
volo appcache