WF Game Tracker is a Python-based graphical application for tracking games in Warhammer 40000: Warpforge, built using Tkinter for its GUI.
This project is an unofficial tool and is not affiliated with or endorsed by the creators or publishers of Warhammer 40000: Warpforge.
- Python 3.10+ must be installed on your system.
- Tkinter:
While Tkinter is included with Python on many platforms, some Linux distributions (e.g., Ubuntu/Debian) require it to be installed separately.
Install it outside your virtual environment:sudo apt-get update sudo apt-get install python3-tk
git clone [email protected]:jdr-solutions/WF_game_tracker.git
cd WF_game_trackerpython3 -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows (PowerShell)pip install -r requirements.txtmake runThis project includes unit tests using pytest.
To run all tests:
make testTo run tests with code coverage:
make coverageTests are run headlessly using
xvfb-runto support Tkinter.
This project enforces code quality using:
make lintmake formatInstead of long CLI commands, you can use Makefile shortcuts:
| Command | Description |
|---|---|
make run |
Start the application (python run.py) |
make test |
Run all tests with pytest |
make coverage |
Run tests with coverage analysis |
make lint |
Run code style checks (flake8) |
make format |
Auto-format code with Black |
make ci |
Run GitHub Actions locally with act |
To see all available commands:
make helpThis repository includes GitHub Actions for:
- ✅ Automated testing
- ✅ Code linting
- ✅ Coverage reporting
You can test the CI pipeline locally using act.
This prevents unnecessary failed GitHub runs and speeds up debugging.
If act is not installed, download and install it:
curl -s https://api.github.com/repos/nektos/act/releases/latest | grep browser_download_url | grep "Linux_x86_64" | cut -d '"' -f 4 | wget -qi -
tar -xvzf act_Linux_x86_64.tar.gz
sudo mv act /usr/local/bin/
act --versionTo test GitHub Actions before pushing:
make ciThis runs the same workflow locally that GitHub would execute.
Ensure Docker is installed and running, as
actruns workflows inside containers.
This project is licensed under the MIT License.