retroemu
github.com
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
Where Specifiction places it
- Multi-System Emulators#28 of 547.9