GOG Achievements Manager
March 6, 2026 · View on GitHub
A desktop application for managing GOG achievements.
View, unlock, and lock achievements for your GOG games with your mouse.
What It Does
GOG Achievements Manager connects to your GOG account and allows you to:
- Browse your GOG game library
- View all achievements for each game
- Unlock achievements you've earned but weren't tracked
- Lock achievements to reset your progress
- See achievement details including descriptions, icons and unlock dates
User Guide
Installation
- Download the latest release for Windows (x64)
- Extract the archive
- Run
bin\launcher.exe
Prerequisites
- GOG Galaxy installed and working (for authentication)
- Windows operating system (because of GOG Galaxy)
- An active GOG account with owned games
How to Use
Viewing Your Games
- Launch the application
- The app will automatically load your GOG game library
- Games will appear with cover art and title
- Use the search bar at the top to filter games by name (or ID)
Managing Achievements
- Click on any game to view its achievements
- To modify achievements:
- Click the checkbox next to an achievement to toggle its state
- Locked achievements can be unlocked
- Unlocked achievements can be locked (reset)
- Click "Save Changes" to apply modifications
Tips
- The search function works with both game titles and game IDs
- Changes are saved directly to GOG's servers
- Unlocking an achievement sets the unlock date to 10 seconds ago
- Locking an achievement removes the unlock date entirely
Developer Guide
Technology Stack
- Framework: Electrobun - Desktop app framework using Bun runtime
- Frontend: React 19 + TypeScript
- Styling: Tailwind CSS 4
- Build Tool: Vite 7
- Runtime: Bun (backend process)
- Platform: Windows x64
Project Structure
gog-achievements-gui/
├── src/
│ ├── bun/ # Backend (Bun runtime)
│ │ ├── gog/ # GOG API integration
│ │ └── index.ts # Main process entry point
│ ├── mainview/ # Frontend (React)
│ │ ├── components/ # React components
│ │ ├── App.tsx # Main React component
│ │ ├── main.tsx # React entry point
│ │ └── index.html # HTML template
│ └── shared/
│ └── types.ts # Shared RPC types
├── assets/ # Static assets
Architecture
The application follows a two-process architecture:
Bun Backend Process (src/bun/)
- Runs in Node.js-compatible Bun runtime
- Handles GOG API communication
- Fetch authentication from GOG Galaxy via Windows Registry
- Implements RPC handlers for frontend requests
- Caches game data locally to reduce API calls
React Frontend Process (src/mainview/)
- Runs in webview
- Renders UI with React and Tailwind CSS
- Communicates with backend via RPC (Remote Procedure Call)
- Manages application state and user interactions
RPC Communication
The app uses Electrobun's RPC system for backend-frontend communication.
Development Setup
-
Install dependencies:
bun install -
Run in development mode:
bun run dev -
Run with Hot Module Replacement (HMR):
bun run dev:hmr -
Build for production:
bun run build
License
AGPL-3.0-only
Author
Timendum