Run Nova from source.
For developers and tinkerers who want to run Nova directly from the GitHub repository, read the code as it runs or try changes of their own.
Five steps to a running Nova
Pick your system. Everything happens in a terminal, inside a folder of your choice.
Install Python 3.13 and Git
On macOS with Homebrew:
brew install python@3.13 git
On Linux, install Python 3.13 or newer from your distribution if it offers it, otherwise from python.org or with pyenv. Check with python3.13 --version.
Get the code
git clone https://github.com/mrantonSG/nova_DSO_tracker.git cd nova_DSO_tracker
Create and activate a virtual environment
python3.13 -m venv venv source venv/bin/activate
Your prompt now starts with (venv).
Install the dependencies
pip install -r requirements.txt
Start Nova
export FLASK_APP=nova flask run
Open http://localhost:5001. On the first start Nova creates its database and default files in the instance folder. Stop it with Ctrl+C.
Install Python 3.13 and Git
Download Python 3.13 from python.org and tick Add python.exe to PATH in the installer. Install Git from git-scm.com. Then open PowerShell.
Get the code
git clone https://github.com/mrantonSG/nova_DSO_tracker.git cd nova_DSO_tracker
Create and activate a virtual environment
py -3.13 -m venv venv .\venv\Scripts\Activate.ps1
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned and try again.Install the dependencies
pip install -r requirements.txt
Start Nova
$env:FLASK_APP = "nova" flask run
Open http://localhost:5001. On the first start Nova creates its database and default files in the instance folder. Stop it with Ctrl+C.
Day-to-day
All commands run inside the nova_DSO_tracker folder.
Start Nova again
Activate the virtual environment, then start it as in step 5.
source venv/bin/activate # Windows: see step 3
flask run
Get the latest version
Back up your data first (on Windows, just copy the instance folder), then pull the new code and refresh the dependencies.
cp -r instance instance_backup_$(date +%Y%m%d) git pull pip install -r requirements.txt
Where everything lives
Your database, settings, uploaded images and logs are all in the instance folder. Copy it to back up or move Nova. Advanced settings go in instance/.env, for example SINGLE_USER_MODE=False for several accounts, or the AI_… keys for Ask Nova.
Running it permanently
For a server or Raspberry Pi that runs Nova around the clock, Docker is the easier route. If you prefer Python, use gunicorn instead of flask run (macOS and Linux only):
pip install gunicorn gunicorn --workers 4 --bind 127.0.0.1:5001 nova:app
Stuck? Open an issue on GitHub with your system, Python version and the error message.