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\activate
Your 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
gunicorn
command.