Developer Guide

Developer installation

If you want to change parts of Nengo, you should do a developer installation.

git clone https://github.com/nengo/nengo.git
cd nengo
python setup.py develop --user

If you use a virtualenv (recommended!) you can omit the --user flag.

How to build the documentation

We use the same process as nengo to build the documentation.

Development workflow

Development happens on Github. Feel free to fork any of our repositories and send a pull request! However, note that we ask contributors to sign a copyright assignment agreement.

Code style

For python code, we use the same conventions as nengo: PEP8, flake8 for checking, and numpydoc For docstrings. See the nengo code style guide.

For C++ code, we roughly adhere to Google’s style guide.

Unit testing

We use PyTest to run our unit tests on Travis-CI. To ensure Python 2/3 compatibility, we test with Tox. We run nengo’s full test-suite using nengo_mpi as a back-end. We also have a number of tests to explicitly ensure that results obtained using nengo_mpi are the same as nengo to a very high-degree of accuracy.

For more information on running tests, see the README.