Check our issues here or on Huboard
###OSX only - Install Brew
First make sure you have npm installed, if not install it according to the instructions here: http://brew.sh/
###Install the project
Checkout the project from https://github.com/OpenBudget/open-budget-frontend/
and then go into the open-budget directory and run these in the command line:
$ cd open-budget
$ npm install
$ sudo npm install -g bower
$ bower update
$ sudo npm install -g grunt-cli
$ grunt
(tested on Windows XP SP3, Windows 7)
###Install git
If you don't already have git installed, get it at: http://git-scm.com/download/win
###Install node.js (includes npm)
Get the Windows installer from: http://nodejs.org/download/
###Fix up npm
(This section handles a known issue with npm, see npm/npm#6106)
Open Git Bash. Run:
$ npm
If you get an error that looks like:
ENOENT, stat '<some directory>\npm'
Then run this command:
$ mkdir "%APPDATA%\npm"
###Install the project
Same instructions as under OS X above (only without 'sudo').
grunt build
Will build the app for production use in open-budget/dist
.
grunt serve:dist
Will build the app for production and serve it via local web server at http://localhost:9000 (build = minify the js bundle, minify the compiled css, revving all of the assets and update the references accordingly)
The build system we're using is webpack.
The less is also compiled via webpack, with single entry point at the main.js
. (coffee/js modules dose not have thier own style dependencies declarations), and extracted using ExtractTextPlugin
Our js code is ES6, transpiled using babel 6, es2015 preset.
We are following airbnb javascript style, enforced by eslint. to lint the code use: grunt eslint
We strive to convert all the coffeescript code into ES6
###Enjoy!