Skip to content
SPECIFICTION
Get listed

retroemu

github.com

Free plan WindowsmacOSLinuxAPI
Visit github.com
Spec score 7.9 #28 of 54 in Multi-System Emulators

Spec sheet

What it does
retroemu runs retro console games in a terminal with Node.js using libretro cores compiled to WebAssembly.Read 5 Oct 2026 · github.com
Purpose
retroemu runs classic console games in a terminal using libretro cores compiled to WebAssembly.Read 11 Oct 2026 · github.com
Integrations
The project uses libretro cores and SDL2, and documents WebRTC remote play using node-datachannel and hsync for signaling.Read 5 Oct 2026 · github.com
Security
The README describes jsgame games as running in a sandboxed realm.Read 11 Oct 2026 · github.com
License
The repository lists the project license as MIT.Read 11 Oct 2026 · github.com
BIOS limit
PC Engine CD and ColecoVision require users to provide their own BIOS dumps because the README says no free replacement exists.Read 11 Oct 2026 · github.com
Controllers and audio
The README says SDL2 supports more than 2,100 controllers with automatic mapping and provides direct SDL2 audio output.Read 11 Oct 2026 · github.com
Display requirement
Terminal output requires a truecolor terminal; the README names iTerm2, Kitty, Alacritty, Windows Terminal, and GNOME Terminal as examples.Read 11 Oct 2026 · github.com
Install and runtime requirement
The README gives `npm install -g retroemu` as the installation command and requires Node.js 22 or later.Read 11 Oct 2026 · github.com
Integration
Frontend applications can launch retroemu with an IPC channel and control it through JSON-RPC.Read 11 Oct 2026 · github.com
Limits
PC Engine CD and ColecoVision require BIOS dumps supplied by the user; the README says most other listed systems do not require one.Read 5 Oct 2026 · github.com
Native game formats
It can also run WASM wasmcart games and JavaScript jsgame games through its rendering pipeline.Read 11 Oct 2026 · github.com
Programmatic use
The package exposes a programmatic API for loading games and controlling emulation, saves, input, and video.Read 5 Oct 2026 · github.com
Remote play
Remote play lets a host share a game with a joining player or spectator, with video, audio, and controller input sent peer-to-peer over WebRTC.Read 11 Oct 2026 · github.com
Remote play signaling
The README says the signaling server brokers the WebRTC handshake and then leaves the loop, seeing about 3 KB of data.Read 5 Oct 2026 · github.com
Requirements and installation
The README requires Node.js 22 or later and a truecolor terminal, and gives `npm install -g retroemu` as the installation command.Read 5 Oct 2026 · github.com
Saves
Battery-backed SRAM is saved automatically on quit, and save states can be saved or loaded with F5 and F7.Read 11 Oct 2026 · github.com
Supported systems
The README describes support for more than 25 systems, including NES, SNES, Game Boy, Genesis, Atari, and others.Read 5 Oct 2026 · github.com
Systems
The README lists support for more than 25 systems, including NES, SNES, Game Boy, Genesis, Atari, N64, and PlayStation.Read 11 Oct 2026 · github.com
Video
Video can render as ANSI art in the terminal, in an SDL window, or in both at once.Read 11 Oct 2026 · github.com

Plans and prices

Free Free MIT-licensed software; install with npm Read 11 Oct 2026 · github.com

Every retroemu plan and price →

Where Specifiction places it

Alternatives to retroemuAll alternatives →