Development requirement

djangocodemirror is developed with:

  • Test Development Driven (TDD) using Pytest;
  • Respecting flake and pip8 rules using Flake8;
  • Sphinx for documentation with enabled Napoleon extension (using only the Google style);
  • tox to test again different Python and Django versions;

Every requirement is available in file dev_requirements.txt (except for tox).

Install for development

First ensure you have pip and virtualenv installed, then in your console terminal type this:

mkdir djangocodemirror-dev
cd djangocodemirror-dev
virtualenv .
source bin/activate
pip install -r

djangocodemirror will be installed in editable mode from the last commit on master branch.


Unittests are made to works on Pytest, a shortcut in Makefile is available to start them on your current development install:

make tests


To ease development again multiple Python and Django versions, a tox configuration has been added. You are strongly encouraged to use it to test your pull requests.

Before using it you will need to install tox, it is recommended to install it at your system level so dependancy is not in tests requirements file:

sudo pip install tox

Then go in the djangocodemirror module directory, where live the and tox.ini files and execute tox:



You should see about sphinx-autobuild for a watcher which automatically rebuild HTML documentation when you change sources.

When installed you can use following command from docs/ directory:

make livehtml