GameTracker is a desktop application for tracking your video game library, backlog, and wishlist. It fetches game info, completion times, and prices from multiple platforms, including Steam, Epic Games, Xbox, PlayStation, and Nintendo. Built with Python and PyQt5, it features a modern dark-themed interface and an auto-update mechanism.
-
Backlog & Wishlist Management
- Add games to backlog or wishlist.
- Mark games as owned, favorite, or completed.
- Track completion dates automatically.
-
Game Info Integration
- Fetch game details from RAWG.
- Fetch HowLongToBeat stats (main story, extras, completionist, all-styles hours).
-
Price Tracking
- Current game prices from Steam, Epic Games, Xbox, PlayStation, Nintendo.
- Full price, sale price, and subscriptions (Game Pass, PS Extra, PS Premium).
- Detect free games and discounts.
-
Custom Game Cards
- Cover art, platforms, review score, hours, dates, and price info.
- Interactive buttons for favorite, owned, and completed status.
-
Filtering & Sorting
- Filter by backlog, wishlist, favorites, completed, score, or completion hours.
- Sort by name, score, hours, or completion date.
-
Auto Update
- Checks GitHub for new versions and downloads updates automatically.
-
Dark Theme
- Clean, modern interface using
styles.qss.
- Clean, modern interface using
- Download the latest GameTrackerInstaller.exe.
- Run the installer and follow the prompts.
- The application will be installed to your selected folder.
Note: The
api.pyfile does not include API keys. If you want to use the source code, you must add your own keys for RAWG, IsThereAnyDeal, and PlatPrices. Note: Only needsrc\GameTrackerif you don't want updates through Git.
- Download /src/GameTracker.
- pip install -r requirements.txt
- Edit /controllers/api.py with your api keys.
- Edit version.py with your own version number.
- If you want remote updates through git edit /controllers/update_checker.py with the url to your git, otherwise you can remove the call to update_checker in app.py.
- Run app.py.
/GameTracker/src/GameTracker │
app.py │
main_window.py │
version.py │
├── controllers │
├── api.py │
├── game_controller.py │
└── update_checker.py │
├── https://raw.githubusercontent.com/Inderjit01/GameTracker/refs/heads/main/version.txt
└── https://github.com/Inderjit01/GameTracker/releases/latest/download/GameTrackerInstaller.exe
├── dialogs │
└── add_game.py │
├── images │
├── game_tracker_logo.png │
└── game_tracker_logo.ico │
├── models │
└── db.py │
├── styles │
└── styles.qss │
└── widgets
├── game_card.py
├── prices.py
└── strike_label.py
/GameTracker/src/Updater
└── updater.py
- Development Environment:
/GameTracker/src/GameTracker
└──games.db
- Executable Environment:
user/AppData/Roaming/GameTracker/
└── games.db