// Software project
QuestLog
A local-first desktop game library tracker for backlogs, active games, finished runs, notes, collections, and Steam imports.
The idea
My game backlog had outgrown the tools I was using to remember it. I wanted one place for games I planned to play, games already in progress, finished runs, favorites, ratings, personal notes, and collections.
QuestLog began as a small browser app and grew into a packaged desktop application for Windows and macOS. It remains local-first: library data and settings stay on the machine, with JSON export and import for portable backups.
What it does
- Tracks games as Backlog, Playing, Paused, Finished, or Dropped
- Searches, sorts, and filters by platform, status, collection, favorite, and tag
- Stores notes, ratings, favorites, collections, and custom tags
- Imports a Steam library and refreshes Steam activity
- Uses RAWG for optional cover artwork and game metadata
- Surfaces a “Pick Up Where You Left Off” shelf
- Supports bulk updates and detailed library statistics
- Includes themes, layout options, and scenic backgrounds
- Ships as a Windows installer and macOS builds
Building with AI as a development partner
One of the most useful parts of the project was learning where AI actually helped. I used it as a pair programmer—not a one-click app generator—to accelerate implementation, debug problems, improve the interface, package the desktop releases, and prepare the repository for other people to use.
The lesson was straightforward: AI worked best when I supplied a clear direction, tested the result, and stayed responsible for the decisions.
Technical shape
QuestLog uses JavaScript, HTML, and CSS for the application, a small local Node.js server for Steam proxy routes, and Electron for the desktop shell and packaged releases. Browser mode uses local storage, while desktop mode maintains its own persistent local application data.
The current public release is available through the project’s GitHub repository.