This method is for users who are comfortable with the command line and want to run the application directly with Python.
1. Prerequisites: Install Python & Git
You need Python 3.10+ and Git installed.
- macOS: Use Homebrew: 
brew install python git - Windows: Install from git-scm.com and python.org (ensure you check the box to “Add Python to PATH”).
 - Linux (Debian/Ubuntu): 
sudo apt update && sudo apt install git python3 python3-venv python3-pip -y 
2. Clone the Repository
Open your Terminal and navigate to where you want to store the application, then run:
git clone https://github.com/mrantonsSG/nova_DSO_tracker.git
cd nova_DSO_tracker
3. Set Up and Activate the Virtual Environment
- Create the environment:Bash
# On macOS/Linux python3 -m venv venv # On Windows py -3 -m venv venv - Activate the environment:Bash
# On macOS/Linux source venv/bin/activate # On Windows .\venv\Scripts\activateYour terminal prompt should now show(venv). 
4. Install Dependencies
Install all required packages from the requirements.txt file.
pip install -r requirements.txt
5. Run the Application
For any server or long-term use (like on a Raspberry Pi), it is highly recommended to use a production server like Gunicorn.
# First, install gunicorn inside your venv
pip install gunicorn
# Then, run the app
gunicorn --workers 4 --bind 0.0.0.0:5001 nova:app
After starting, open your browser and navigate to http://localhost:5001.
Additional Information
Deactivate the virtual environment
Once you are finished using the application, you can deactivate the virtual environment by simply running:
deactivate
This command returns you to your normal terminal prompt. You must reactivate the environment (source venv/bin/activate) before running the app again.
Upgrading the Python Installation
- (Recommended) Back up your data: 
cp -r instance instance_backup_$(date +%Y%m%d) - Pull the latest code: 
git pull origin main - Activate your virtual environment: 
source venv/bin/activate - Update dependencies: 
pip install -r requirements.txt - Restart the application with the 
gunicorncommand.