Emulators (Multi-system Frontends)
RetroArch, Batocera, EmulationStation Desktop Edition, OpenEmu, Lakka, RecalBox — the all-in-one frontends that wrap dozens of console cores.
The "I want one app that runs every system" layer. For per-console picks see Nintendo emulators, Sony emulators, and misc / PC / arcade. For ROM hash-checking and metadata scraping see ROM management. For Steam Deck-shape Linux distros built around these frontends see Linux / SteamOS / Deck. The Pi flavors of Lakka / Batocera / RecalBox live under Pi OS Distributions and the broader Pi retro context under Pi Classic Projects. For a developer-side view of the engines these games originally ran on see Game Development.
The 2024–26 reality: RetroArch is still the libretro mothership but the frontend wars have settled — EmulationStation Desktop Edition (ES-DE) is the polished cross-platform UI most enthusiasts now layer on top, Batocera is the dominant turnkey distro, and EmuDeck (see Linux / SteamOS / Deck) auto-installs all of this on a Steam Deck in one click.
The libretro core ecosystem
- ★ ★ RetroArch — GPL-3.0 / mixed-license OSS; Win/Mac/Linux/Android/iOS (post-EU-DMA + Apple policy reversal)/consoles. The universal frontend for the libretro API. Hundreds of cores: Nestopia, Snes9x, Genesis Plus GX, Beetle PSX, mGBA, melonDS, ParaLLEl-N64, Mupen64Plus-Next, PCSX-ReARMed, Flycast, plus standalone-also-libretro builds of Dolphin, PCSX2, DuckStation, Citra (and forks), and more. CRT shaders, run-ahead latency reduction, save-state rewind, RetroAchievements integration, netplay. Honest flag: notoriously complex menu — most newcomers want Batocera or ES-DE on top.
- libretro — the API itself; OSS. Anyone can ship a libretro core; that's why the catalog is huge.
Frontends that wrap RetroArch (or run their own cores)
- ★ EmulationStation Desktop Edition (ES-DE) — free OSS; Win/Mac/Linux/Android. The community continuation of the long-running ES frontend, with a far cleaner UI, theme system (Slate, Modern, Retro), built-in scraper, and per-system core preferences. The default "pretty grid of game art" frontend most enthusiasts now choose. Pairs with RetroArch + standalone emulators.
- ★ Batocera.linux — free OSS; Linux distro. Boot a USB or install on a mini-PC / handheld and you have RetroArch + ES + scrapers + dozens of cores configured out of the box. Powers most "retro arcade cabinet" builds in 2025-26. Runs on x86, ARM, Pi, Apple Silicon, RK3588 handhelds, etc.
- Lakka — free OSS; LibreELEC-based Linux distro = RetroArch only with no other UI. Lighter than Batocera; rigid. Good if you want a single-purpose RetroArch box.
- RecalBox — free OSS; Linux distro; kid-friendly defaults, tighter curation than Batocera, smaller core list. The "set up grandkid's console" pick.
- OpenEmu — free OSS; Mac-only. Beautifully native macOS app with an Apple-style library and per-system cores (mGBA, Mupen64Plus, etc.). Lags on cutting-edge cores vs RetroArch but the polish is unmatched on Mac.
- LaunchBox / BigBox — free + paid Win; "Big Box" arcade-cabinet mode is paid (~$50 lifetime / $30/yr Premium). Massive theme community; the Windows MAME-cabinet default historically. ES-DE has cooled its momentum.
- Pegasus Frontend — free OSS; cross-platform; QML-themable, lighter than ES-DE, smaller theme catalog.
- AttractMode — free OSS; long-running attract-mode-style frontend, popular in MAME cabinet builds.
Pi / SBC-shape frontends
- ★ RetroPie — free OSS; Raspberry Pi OS overlay; EmulationStation + RetroArch + dozens of cores. The classic Pi retro distro. Pi 4 sweet spot. See Pi Classic Projects and Pi OS Distributions.
- ★ Batocera on Pi — see above; a more polished out-of-box alternative to RetroPie on Pi 4 / Pi 5.
- Knulli — Batocera-shape custom firmware for Anbernic / handheld hardware — see Retro handheld firmware.
Choosing a stack
- Just want it to work, plug into TV: Batocera on a $80 mini-PC or used Intel NUC.
- Already on Steam Deck / SteamOS: EmuDeck auto-installs ES-DE + RetroArch + standalones.
- Polished desktop frontend on existing Win/Mac/Linux PC: ES-DE on top of RetroArch + standalones.
- Mac-native lover: OpenEmu.
- Pi 4 in a NES shell / arcade build: RetroPie or Batocera.
- MAME cabinet: Batocera or LaunchBox/BigBox.
Pick this if…
- Default "all systems, OSS, cross-platform": RetroArch + ES-DE.
- Default "all systems, turnkey distro on dedicated hardware": Batocera.
- Mac, native, beautiful: OpenEmu.
- Cabinet / MAME-leaning Windows: LaunchBox/BigBox.
- Pi: RetroPie or Batocera Pi build.
- Single-purpose RetroArch box: Lakka.