A Python application to track your supplements, their quantities, and calculate cost effectiveness.
- Add, edit, and remove supplements
- Track supplement quantities and daily usage
- Calculate days remaining for each supplement
- Search through supplements by name or tags
- Cost calculator to compare different supplement options
- Automatic tracking of remaining doses based on daily usage
- Toggle auto-decrement feature for each supplement
- Right-click context menu for quick actions
- Keyboard shortcuts for common operations
- Visual feedback for supplements with auto-decrement disabled
- Helpful tooltips for better user experience
- Save and load data with custom .sup file format
- Automatic count updates based on time passed since last save and whenever the supplement list is refreshed
- Windows file association for .sup files
- Drag and drop support for .sup files
- Available as both Python script and standalone executable
- Make sure you have Python 3.x installed
- Install the required dependencies:
pip install -r requirements.txt
- Download the latest SupplementTracker.exe from the releases
- Run the executable once with --register to set up file associations:
SupplementTracker.exe --register
- Install Python 3.x and the requirements:
pip install -r requirements.txt
- Run the build script:
python build.py
- Find the executable in the 'dist' directory
- Run the executable with --register to set up file associations:
SupplementTracker.exe --register
You can start the program in several ways:
- If using Python:
python main.py
If using executable: RunSupplementTracker.exe
- Open with a specific file:
- Python:
python main.py myfile.sup
- Executable:
SupplementTracker.exe myfile.sup
- Python:
- Double-click any .sup file (after registering file association)
- Drag and drop a .sup file onto the program
- Click "Add Supplement"
- Fill in the required information:
- Name: Supplement name
- Current Count: Current number of doses
- Initial Count: Number of doses when bought
- Cost: Price of the supplement
- Tags: Comma-separated tags (e.g., "vitamin, mineral")
- Link: URL to the product (optional)
- Daily Dose: Number of doses taken per day
- Auto-decrement: Toggle whether the supplement count should automatically decrease daily (checked by default)
You can edit a supplement in multiple ways:
- Right-click on a supplement and select "Edit" from the context menu
- Select a supplement and press Enter
- Double-click on a supplement
The edit dialog allows you to modify all supplement properties, including the auto-decrement setting.
The application supports several keyboard shortcuts for common actions:
- Ctrl+S: Save the current file
- Enter: Edit the selected supplement
- Delete: Remove the selected supplement
- Ctrl+A: Select all supplements
- Escape: Clear selection
- Click "Cost Calculator"
- Add options using the "Add Option" button
- For each option, enter:
- Dose Count: Number of doses in the package
- Price: Total price of the package
- Daily Dose: Number of doses taken per day
- Click "Calculate" to see cost comparison
- Use the "Remove" button to remove unwanted options (minimum 2 required)
- Use "Save As..." to save your data to a new .sup file
- Use "Load File" to open an existing .sup file
- The program automatically tracks the save date and updates counts based on time passed whenever a file is loaded or the supplement list is refreshed
- When closing, you'll be prompted to save any unsaved changes
- Press Ctrl+S to quickly save your current file
Use the search box to filter supplements by name or tags.
Supplements with auto-decrement disabled are visually distinguished in the list, making it easy to identify which supplements are not automatically decreasing their count.
The application saves all supplement data to .sup files (JSON format). These files include:
- Supplement details (name, count, cost, etc.)
- Save date for automatic count updates
- Tags and links
- Daily dosage information
- Auto-decrement settings for each supplement
The program automatically updates supplement counts based on the time passed since the last save when loading a file, but only for supplements that have auto-decrement enabled.
The application maintains backward compatibility with older .sup files that don't include the auto-decrement property. When loading such files, all supplements will have auto-decrement enabled by default.