A unified, cross-store game launcher and library manager.
Unify your Steam, GOG, Epic, Rockstar, Ubisoft, and DRM-free libraries into a single, fast, native experience — with discovery, sync, activity tracking, a social layer, and a controller-first 10-foot UI.
- ✨ Features
- 📸 Screenshots
- 💡 Inspiration
- 🛠️ Tech Stack
- 🚀 Getting Started
- 📁 Project Structure
- 🗺️ Roadmap
- 📌 Status
- 🤝 Contributing
- ⚖️ Disclaimer
- 📄 License
- 🙏 Acknowledgments
| Feature | Description |
|---|---|
| Unified Library | Steam, GOG Galaxy, Epic Games Store, Rockstar, Ubisoft Connect, Humble Bundle, and manual imports in one cohesive grid. |
| Rich Game Pages | Hero, metadata, reviews, achievements, screenshots, videos, web links, HowLongToBeat, Crackwatch, ProtonDB, and live player counts. |
| Emulators & ROMs | Integrated emulator manager: launch emulator executables, catalog multi-system platforms, and manage ROMs with bulk actions. |
| Mod Manager | Dual-pane mod manager for Steam Workshop & Nexus Mods with bulk multi-select (enable/disable/delete), stat cards, and mod size tracking. |
| IGDB Storefront | IGDB-powered catalog browsing (search, filters, rails, price badges, comparisons). |
| Activity Tracking | FPS, frametime, and per-session metrics via MSI Afterburner / RTSS, with interactive timeline, Gantt, performance, and sparkline views. |
| Downloads | Unified download engine with single-active queueing, seeding, HTTP direct, debrid (Real-Debrid / AllDebrid), and torrents via librqbit. |
| Storage Manager | Visualize disk usage, move installs between drives, track emulator & mod footprints, and bulk-recalculate sizes. |
| Community & Friends | Local-first social layer: profiles, friend sync, shared recommendations, and a community feed. |
| Discord Rich Presence | Playing and browsing presence — platform/playtime context, dynamic game poster, and a launcher toggle. |
| Big Picture Mode | Full-screen, controller-first 10-foot UI with rail-aware gamepad navigation across Library, Store, News, Deals, Activity, Friends, and Community. |
| Live Player Counts | Steam player counts with a hero banner, tabbed popover, and historical player-count graph with range toggle. |
| i18n & Privacy | Multi-language translation support (LanguageContext), theme gallery with custom accent picker, and a Privacy & Data tab to view/wipe local storage. |
🚧 Planned / in progress: Linux + Steam Deck support · Steam reviews & multi-source ratings · plugin system.
Dark-first UI, captured on Windows at 1920×1080. The same interface adapts to light mode and desktop use.
📁 Full sets live in
Screenshots/— including more Game page (10), Friends (10), Activity (5), and Store (9) shots.
GameIndex is built with — not just inspired by — excellent projects in the launcher space:
- Hydra Launcher — the clean, modern approach to game distribution.
- Playnite — the extensible, library-aggregation philosophy and customization depth.
- LaunchBox — rich metadata, media, and emulation-focused cataloging.
- Steam + GOG Galaxy — unified-library UX patterns.
We borrow the best ideas from each and aim to combine them into a single, lightweight native app.
| Layer | Technology |
|---|---|
| Shell | Tauri v2 (Rust) |
| Frontend | React 19 + TypeScript |
| Bundler | Vite 7 |
| DB | SQLite (rusqlite + r2d2_sqlite) |
| Secrets | OS keychain via keyring |
| Torrents | librqbit |
| Charts | Custom SVG (src/components/charts/) |
| Routing | React Router v7 (HashRouter for Tauri file://) |
- Node.js (≥ 18) + npm
- Rust (stable toolchain)
- Platform deps: see Tauri prerequisites
npm install
npm run tauri dev # launches the native window with hot reloadFrontend-only iteration (no native shell):
npm run dev # Vite at http://localhost:1420npm run tauri build # tsc + vite build + native bundlesIndependent antivirus scans of the latest release artifacts:
- Standalone binary: virus total
- Installer: virus total
Why does VirusTotal flag GameIndex? The detections you may see (e.g. Trapmine's Malicious.moderate.ml.score or Acronis's Static ML) are machine-learning heuristics, not malware signatures — there is no malicious behavior being matched. GameIndex is a Tauri (Rust) app, and Rust-compiled binaries are routinely flagged for these characteristics:
- Unsigned binaries. Release builds are not code-signed, so antivirus engines have no publisher identity to anchor on and treat the file as an "unknown new binary."
- Rust binary traits. Static Rust executables have high entropy and an import table atypical of native apps — a classic ML trigger.
- Self-contained packaging. The standalone/portable build embeds its WebView2 bootstrap, which heuristic engines find suspicious.
This is a known false-positive pattern affecting many legitimate Tauri and Rust projects. Nothing in the source code matches malware behavior — it's fully open source, so you can verify the code yourself and build from source (npm run tauri build). The files are intentionally unsigned because code-signing certificates cost money; the ML flags typically disappear once a release is signed.
npx tsc --noEmit.
├── src/ React + TypeScript frontend
│ ├── pages/ Top-level route components (Library, Store, News, Deals,
│ │ Activity, Achievements, Downloads, Storage, Community,
│ │ Friends, Wishlist, Emulators, Mods, Settings)
│ ├── components/ Feature-scoped UI (game/, library/, store/, downloads/,
│ │ news/, activity/, charts/, bigscreen/, ui/)
│ ├── context/ Cross-cutting providers (Game, Activity, Theme, Language, ...)
│ ├── hooks/ Reusable stateful helpers
│ ├── types/ Mirrors of Rust serde models
│ └── styles/ Themed CSS
└── src-tauri/ Rust backend
├── src/ Tauri commands, DB DAOs, integrations
│ ├── steam|gog|epic|rockstar|uplay|humble/ Per-store sync + auth
│ ├── downloader/ Direct + debrid downloads & queue management
│ ├── db/ SQLite pool + schema
│ └── torrent_engine.rs librqbit wrapper
└── tauri.conf.json Frameless window + bundle config
For deeper architectural notes and conventions, see knowledge.md.
Track progress, ideas, and priorities in todo.md. Highlights:
- ✅ Steam, GOG, Epic, Rockstar, Ubisoft, Humble library sync
- ✅ Steam achievements, HowLongToBeat, Crackwatch, live + historical player counts
- ✅ Activity dashboard with FPS + frametime charts
- ✅ Downloads engine rewrite (single-active queue, seeding, direct & debrid torrents)
- ✅ Storage manager + emulator & mod footprint breakdown
- ✅ News page with RSS feeds
- ✅ IGDB-powered storefront (search, filters, rails, price badges, comparisons)
- ✅ Community & Friends social layer
- ✅ Big Picture Mode (controller-first 10-foot UI with rail navigation)
- ✅ Emulators manager & ROM library tools
- ✅ Mod manager (Steam Workshop & Nexus Mods integration)
- ✅ Discord Rich Presence (playing + browsing presence, dynamic poster, launcher toggle)
- ✅ Internationalization (i18n) & language switcher
- ✅ Privacy & Data management in Settings
- ✅ Theme gallery + custom accent picker
- ✅ Steam reviews & multi-source ratings
- 🚧 Per-game launch options & compatibility profiles
- ⏳ Linux + Steam Deck support
- ⏳ Plugin system
- ⏳ Theme editor & community themes
🛠️ Personal project, vibe-coded — built in my free time as a learning exercise and a love-letter to PC gaming. Expect rough edges, breaking changes, and rapid iteration. Contributions and ideas are welcome.
- Read the conventions in
knowledge.md(theme tokens, routing, schema migrations, etc.). - Fork the repo and create a feature branch.
- Keep PRs focused and documented.
- Run
npx tsc --noEmitandcargo checkbefore submitting.
Please open an issue before starting large changes so we can discuss direction.
- If you like a game, support its developers — buy it from official stores (Steam, GOG, Epic, etc.) where the money actually reaches the people who made it.
We believe in the open-source community, the games we love, and the developers who make them. Please use GameIndex responsibly and in accordance with the laws of your country.
GameIndex is released under the MIT License — free to use, modify, and distribute, including for contributing back to the project. Attribution appreciated.
See the full text in the LICENSE file.
- The Tauri, React, and Rust communities for the excellent tooling.
- IGDB, HowLongToBeat, Steam, GOG, Epic, and IsThereAnyDeal for the data.
- Hydra Launcher, Playnite, and LaunchBox for the inspiration.
































