A retro game launcher, with its own multi-emulators.
Espaze is a multiplatform (Windows, macOS, Linux) retro game launcher.
Bundling several emulators into a single launcher.
| System | Status | Extensions |
|---|---|---|
| CHIP-8 | ✅ Complete | .ch8 |
| Super-CHIP | ✅ Complete | .sc8 |
| Game Boy (DMG) | ✅ Complete | .gb |
| Game Boy Color | ✅ Complete | .gbc |
| NES | ✅ Complete | .nes |
| Sega Master System | ✅ Complete | .sms |
| Sega Genesis / Mega Drive | ✅ Complete | .md, .bin, .gen |
| Sega Game Gear | ✅ Complete | .gg |
| Atari 2600 | ✅ Complete | .a26, .bin |
| PC Engine / TurboGrafx-16 | ✅ Complete | .pce |
| Game Boy Advance | ✅ Complete | .gba |
| Neo Geo Pocket Color | ✅ Complete | .ngp, .ngc |
| Super Nintendo | ✅ Complete | .sfc, .smc |
| ColecoVision | ✅ Complete | .col |
- Backend: Go + Wails v2 (native window, Go ↔ JS bindings).
- Frontend: vanilla JavaScript + Vite, no framework - each view is a small module that mounts its own DOM.
- Emulation: homemade implementations under
internal/systems/<console>/, all behind one common interface (core.Core) that lets any new console plug in without touching the rest of the app.
internal/emulation/core/core.go- theCorecontract every system implements.internal/systems/<console>/- one implementation per console (CPU, memory, video, sound...).internal/app/app/- the bindings exposed to the frontend via Wails.frontend/src/views/- one view per screen (library, detail, settings, player...).
