Electron · Svelte 5 · Vite·2025

GameVault

Windows desktop game library for non-Steam titles — auto exe detection, Steam/Epic import, artwork, play-time tracking, and one-click launch.

Overview

GameVault turns a folder of indie, GOG-style, or manually installed Windows games into a first-class library — the way Steam presents titles you already own. It exists for the long tail of games that never live in a single launcher and for players who want one place to browse, launch, and track play-time.

Built with Electron, Svelte 5, Vite, and TypeScript, the UI stays reactive while the Node side scans large directory trees. The hard problems are not cosmetic: picking the correct .exe among installers and redistributables, fetching artwork reliably, and knowing when a game process is actually running.

Executable detection walks a folder tree and applies heuristics to skip uninstallers, setup utilities, and Visual C++ redistributables. Players can override the choice when a title ships multiple binaries. Steam and Epic imports read installed manifests so official libraries sit beside manual entries instead of forcing a second workflow.

Artwork is pulled from Steam CDN and SteamGridDB — posters, heroes, and logos — with per-game overrides when metadata is wrong or missing. A process watcher accumulates play-time in real time and surfaces running indicators so the library feels alive during a session, not only after you quit.

Backup and restore export metadata, artwork paths, and play-time into a portable snapshot for machine moves. Custom launch arguments cover FPS caps, mod loaders, and compatibility flags. The gamevault:// protocol handler enables one-click starts from shortcuts or other tools on the same PC.

This project is a practical study in desktop engineering: Windows path realities, registry/manifest integrations, background process awareness, and keeping Electron UIs responsive during I/O-heavy scans. It shows how I approach OS-integrated tooling when "it works on my machine" is not enough.

If you need a Windows desktop app, an Electron + Svelte product, or a local-first library manager with smart file heuristics, GameVault is a concrete reference for scope, UX, and the unglamorous details that make launchers feel trustworthy.

Features
›

Auto executable detection

Scans directory trees and heuristically selects the launch .exe while filtering installers, uninstallers, and redistributables — with manual override when needed.

›

Steam + Epic import

Reads installed games from Steam manifests and the Epic Games Launcher so official libraries live alongside manually added folders.

›

Artwork fetching

Pulls posters, heroes, and logos from Steam CDN and SteamGridDB, with per-game overrides when catalog art is wrong or missing.

›

Play-time tracking

Process watcher detects when a game executable is running and accumulates play-time in real time with clear running indicators.

›

Backup & restore

Exports the entire library — metadata, artwork paths, and play-time — to a portable snapshot for migrations and recovery.

›

Custom launch args & protocol

Per-game launch arguments plus a gamevault:// protocol handler for one-click launches from shortcuts and external tools.

Tech stack
ElectronSvelte 5ViteTypeScriptNode.jsSteamGridDB APIWindows Registry
Highlights
Auto exe detectionSteam + Epic importPlay-time tracking