Local dependencies

Python and virtual environment

It is recommended to work within a virtualenv to ensure proper dependencies isolation. If you’re not familiar with that concept, read Python Virtual Environments - a Primer.

Alright, now you can install virtualenv and then type these commands knowing what you are doing:

$ virtualenv --python=python2.7 venv
$ source venv/bin/activate
$ pip install -r requirements/develop.pip
$ pip install -e .

Some dependencies have an optionnal compilation support for Cython resulting in more performances (mostly XML harvesting). To enable it, you need to install Cython before all other dependencies:

$ pip install Cython
$ pip install -r requirements/develop.pip
$ pip install -e .

NodeJS and modules

You need NodeJS 4.2. If it’s not already installed or you have a different version, you should consider installing NVM which uses the existing .nvmrc.

$ nvm install
$ nvm use

Then install JavaScript dependencies:

$ npm install

Once it’s done, you should be able to run the build command for JS and CSS:

$ inv assets_build


If you plan to hack on statics (JS, CSS files), a dedicated command inv assets_watch will watch these files and recompile (the modified part only!) on each save.