-
Install PostgreSQL 12+
-
Install RabbitMQ This is needed for Celery to work, which does background processing such as the processing of uploaded list-of-voter CSV files.
-
Download helios-server
-
cdinto the helios-server directory
- Install Python 3.13 including dev packages
sudo apt install python3 python3-dev
- Install uv (modern Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
- You'll also need Postgres dev libraries. For example on Ubuntu:
sudo apt install libpq-dev
- Install dependencies (uv creates a virtual environment automatically)
uv sync
- Reset database
./reset.sh
- Start server
uv run python manage.py runserver
To get Google Auth working:
-
Create an application
-
Set up OAuth2 credentials as a web application, with your origin, e.g.
https://myhelios.example.com, and your auth callback, which based on our example ishttps://myhelios.example.com/auth/after/ -
In the developer console, enable the Google People API
-
Set the
GOOGLE_CLIENT_IDandGOOGLE_CLIENT_SECRETconfiguration variables accordingly