To run the backend, create a Python virtual environment and install the dependencies:

$ virtualenv env -p /usr/bin/python3.9  # create the virtualenv if it doesn't exist
$ source env/bin/activate  # activate the virtualenv
(env)$ pip install -r requirements/dev.txt  # install the dependencies


Make sure you have a PostgreSQL database prepared. The default name/credentials are in src/zac/conf/

$ createuser zac -d -P
$ createdb zac -U zac

Next, migrate to create all the tables (or update to the newer version of database schema):

(env)$ python src/ migrate

And create a super-user for development (only required for first time set-up):

(env)$ python src/ createsuperuser

Start development server

Run the dev server:

(env)$ python src/ runserver


The ZAC requires some initial configuration before you can start using it. Open the admin interface at http://localhost:8000/admin/ and log in with your super-user credentials.

See the config documentation to configure the runtime parameters. You can use NLX if you have an outway running on your machine.