Skip to content

romm

Media Servers

A self-hosted ROM manager and player that scans, enriches, browses, and lets you play your game collection in a web browser.

Python Latest 5.0.0 · 11d ago Security brief →

Features

  • Scan libraries with metadata from IGDB, Screenscraper, MobyGames, etc.
  • Fetch custom artwork and display RetroAchievements in the UI
  • Play games directly via EmulatorJS and RuffleRS in any modern browser
  • Official native apps for Playnite (desktop), Android (Argosy/romm‑mobile) and iOS

Recent releases

View all 9 releases →
Review required
5.0.0 New feature
Auth RBAC

UI redesign, savestates, boxart, CRT, ROM patching

No immediate action
4.9.2 Mixed

Crash fix + dependency bumps

No immediate action
4.9.1 Bug fix

config.yml deserialization fix

Config change
4.9.0 Breaking risk
Breaking upgrade

Sync engine + Play tracking + Thumbnails

4.8.1 Mixed
Notable features
  • HTTP proxy support for outbound backend requests
  • Per-platform statistics loading made opt-in to reduce unnecessary homepage fetches
Full changelog

What's Changed

  • make loading per-platform stats opt-in so homepage doesn't fetch them by @cciollaro in https://github.com/rommapp/romm/pull/3158
  • fix: correct ZX Spectrum +3 ROM hashes in known_bios_files.json by @Abdess in https://github.com/rommapp/romm/pull/3191
  • Return link for romm-mobile app to README.md by @milktoastrat in https://github.com/rommapp/romm/pull/3207
  • Add outbound HTTP proxy support for backend requests by @dafal in https://github.com/rommapp/romm/pull/3189
  • chore(deps): bump lodash from 4.17.23 to 4.18.1 in /frontend by @dependabot[bot] in https://github.com/rommapp/romm/pull/3212
  • 4.8 hotfixes by @gantoine in https://github.com/rommapp/romm/pull/3213
  • Fix 500 on /api/tasks/status after cleanup_missing_roms task completes by @gantoine in https://github.com/rommapp/romm/pull/3214
  • Fix registration invite links losing token on external redirect by @gantoine in https://github.com/rommapp/romm/pull/3215
  • fix: correctly delete nested (subdirectory) ROMs from filesystem by @gantoine in https://github.com/rommapp/romm/pull/3216
  • Fix GET /api/tasks/status 500 on expired job TTL (NoSuchJobError) by @gantoine in https://github.com/rommapp/romm/pull/3217

New Contributors

  • @Abdess made their first contribution in https://github.com/rommapp/romm/pull/3191
  • @dafal made their first contribution in https://github.com/rommapp/romm/pull/3189

Full Changelog: https://github.com/rommapp/romm/compare/4.8.0...4.8.1

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

About

Stars
11,140
Forks
594
Languages
Python Vue TypeScript

Install & Platforms

Mobile
Android IOS

Community & Support

Beta — feedback welcome: [email protected]