A recent of node.js and npm is required.
Clone the CouchDB repo:
$ git clone http://git-wip-us.apache.org/repos/asf/couchdb.git
$ cd couchdb
Install all dependencies:
couchdb/ $ cd src/fauxton
couchdb/src/fauxton/ $ npm install
Note
To avoid a npm global install add node_modules/.bin to your path:
export PATH=./node_modules/.bin:$PATH
Or just use the wrappers in ./bin/.
Development mode, non minified files:
./bin/grunt couchdebug
Or fully compiled install:
./bin/grunt couchdb
Using the dev server is the easiest way to use Fauxton, specially when developing for it:
grunt dev
Deploy Fauxton to your local CouchDB instance:
./bin/grunt couchapp_deploy
The Fauxton be available by http://localhost:5984/fauxton/_design/fauxton/index.html
Each bit of functionality is its own separate module or addon.
All core modules are stored under app/module and any addons that are optional are under app/addons.
We use backbone.js and Backbone.layoutmanager quite heavily, so best to get an idea how they work. Its best at this point to read through a couple of the modules and addons to get an idea of how they work.
Two good starting points are app/addon/config and app/modules/databases.
Each module must have a base.js file, this is read and compile when Fauxton is deployed.
The resource.js file is usually for your Backbone.Models and Backbone.Collections, view.js for your Backbone.Views.
The routes.js is used to register a url path for your view along with what layout, data, breadcrumbs and api point is required for the view.