A ROM library manager for organizing and launching retro games with their respective emulators. I do not provide the roms.
RetroHub acts as a central hub for your ROM collection. Add your games once with their emulator paths, then launch them with a double-click. No more hunting through folders to find the right ROM or remembering which emulator to use.
- Grid-based game library display
- Add games with ROM path, emulator path, and optional icon
- Launch games by double-clicking
- Drag and drop or browse for files
- Validates ROM and emulator file types
- SQLite database for storing your library
- Windows
- .NET 6.0 or higher
- Emulators for your ROMs
- Clone the repository
- Open in Visual Studio 2022 or later
- Restore NuGet packages:
- Microsoft.Data.Sqlite
- SQLitePCLRaw.bundle_e_sqlite3
- Build and run
Adding a Game:
- Click "Add Game"
- Enter game title
- Select or drag ROM file
- Select or drag emulator executable
- Optionally add an icon image
- Click "Add Game"
Launching a Game: Double-click any game in the library to launch it with its configured emulator.
Game Boy (.gba, .gbc, .gb), NES (.nes), SNES (.smc, .sfc), N64 (.n64, .z64), DS (.nds), PlayStation (.iso, .bin, .cue), GameCube (.gcm), Wii (.wbfs), Genesis (.gen, .md), and more. Compressed formats (.zip, .7z, .rar) are also supported.
- Built with C# and WPF
- Uses SQLite for local storage
- Database file (games.db) created automatically on first run
CREATE TABLE Games(
Id INTEGER PRIMARY KEY AUTOINCREMENT,
Title TEXT NOT NULL,
RomPath TEXT NOT NULL,
EmuPath TEXT NOT NULL,
IconPath TEXT NOT NULL
);MIT License