Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Everything you need to get started on a Node.js website with express and socket.IO
JavaScript Shell
Tree: 9f67c1c04b

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.

Node Boilerplate Version 2

Requires Node v0.6.6 (or newer) node-boilerplate takes html-boilerplate, express, connect and Socket.IO and organizes them into a ready to use website project. Its a fast way to get working on your Node website without having to worry about the setup. It takes care of all the boring parts, like setting up your views, 404 page, 500 page, getting the modules organized, etc...

Node Boilerplate has 4 goals:

  1. To end the repetition involved with starting a new Node website project
  2. To never install anything outside of the project directory (For easier production deployment)
  3. To make it easy to install additional modules within the project directory
  4. To enable easy upgrade or freezing of project dependencies
    (These goals are much easier to meet now that node includes the node_modules convention)

To start a project:

    git clone git:// mynewproject
    cd mynewproject

This will copy down all of the boilerplate files organize them appropriately and init a fresh new git repository within which you can build your next big thing.

To run the boilerplate template app:

    node server.js

Go to and click on the send message link to see in action.

To add additional modules:

You can git clone any other modules into the lib folder. Any modules cloned into the git folder can be required as global modules ie.. require('somemodule').

If you have a different set of default modules that you like to use, the structure is setup such that you can fork the project and replace the modules in the lib directory and the script will initialize projects with your new set of modules.


node-boilerplate is setup to be easily deployed on a Joyent Node SmartMachine. This means that:

  1. The version of Node is defined in config.json
  2. The main script to run is server.js
  3. The web server port is pulled from process.env.PORT

Note: Currently the port associated with the Joyent SmartMachine is only automatically detected on the server side and not reflected on the client side. When you deploy, be sure to update the client side javascript to reflect the updated socket.IO url. Feel free to write a patch to correct this problem ;-)

Something went wrong with that request. Please try again.