RomM
Beautiful, powerful, self-hosted rom manager and player
Alternative to: antstream arcade
4.1.0-alpha.1
2025-08-09[!CAUTION] As of this version, a valid
config.ymlfile is required to run the app, and must be mounted before upgrading to 4.1.0. Please refer to the instructions at the top of this example config.yml file. The file can be used as-is without making any changes.
[!WARNING] Some platform slugs have been updated to fix common setup issues and remove duplicates. If you use any of the following platforms, the system will migrate to the new slugs will happen automatically, and update your
config.ymlfile accordingly. No manual intervention is required.
cpc,apple-i,apple2,apple2gs,apple3,mattel-aquarius,atari-2600,atari-5200,atari-7800,atari-8-bit,bally-astrocade,bbc-micro,cd-i,cdtv,channel-f,commodore-16-plus4,dragon-3264,dreamcast,edsac--1,electron,elektor-tv-games-computer,fmtowns,game-com,gameboy,gameboy-color,gameboy-advance,game-gear,gamecube,genesis-slash-megadrive,macintosh,microcomputer--1,microvision--1,neo-geo,odyssey--1,nintendo-ds,palmos,pc88,pc98,pet,pdp-7--1,pdp-8--1,playstation,ps,ps4--1,playstation-4,playstation-5,ps-vita,sega-32x,sega-cd,sega-cd-32x,sega-master-system,sega-saturn,sharp-x1,sinclair-zx81,sg-1000,switch2,thomson-mo,trs-80-coco,turbografx-16-slash-pc-engine-cd,turbo-grafx,turbografx16--1,watara-slash-quickshot-supervision,windows,zx-spectrum
New Features
Missing games admin page
There’s a new tag under the Library Management section of the admin panel that displays all ROMs present in the database but missing from the file system. You can choose to delete single games, groups of games using multi-select, or simply purge (cleanup) all missing games from the database with a single click.
https://github.com/rommapp/romm/pull/2172
Smart collections
Create smart, self-updating collections for a selection of search terms and filters! On the search page, change the search term and/or filters, and a new button will appear in the top bar. The dialog will display which filters will be set and allow you to give this smart collection a name and description.
Note: the list of games will only update when you view the contents of the collection
https://github.com/rommapp/romm/pull/2136
Minor Changes
- Unify platform slugs by @gantoine in https://github.com/rommapp/romm/pull/2143
- Display an icon on the card if game has notes by @gantoine in https://github.com/rommapp/romm/pull/2226
- [ROMM-2142] Custom SGDB title match by @gantoine in https://github.com/rommapp/romm/pull/2220
- Use best-match algo for more providers by @gantoine in https://github.com/rommapp/romm/pull/2231
- Add zh_TW translation. by @wctang in https://github.com/rommapp/romm/pull/2188 and https://github.com/rommapp/romm/pull/2194
- Adding Polish translation files. by @gutmanovaty in https://github.com/rommapp/romm/pull/2173
[!NOTE] The API responses for the following endpoints have changed. Please refer to the swagger docs under
/api/docsfor the updated response types.
/api/firmware/delete,/api/rom/delete,/api/tasks/{task_id},/api/tasks/runand/api/tests/run/{task_name}
Bug Fixes
- [ROMM-2202] Fix rom ID selected refresh metadata by @gantoine in https://github.com/rommapp/romm/pull/2204
- Docker build and init fixes by @adamantike in https://github.com/rommapp/romm/pull/2238
- Make RetroAchievements hash matching case-insensitive by @adamantike in https://github.com/rommapp/romm/pull/2240
- Correctly set up dockerignore file by @adamantike in https://github.com/rommapp/romm/pull/2237
- Run scheduler when only LaunchBox update is enabled by @adamantike in https://github.com/rommapp/romm/pull/2222
- Correctly evaluate enabled metadata sources in scheduled library scan by @adamantike in https://github.com/rommapp/romm/pull/2213
- [ROMM-2186] Allow editing user without password field by @gantoine in https://github.com/rommapp/romm/pull/2193
- [ROMM-2184] Fix selecting dialog buttons on mobile by @gantoine in https://github.com/rommapp/romm/pull/2198
- [ROMM-1868] Fix grouping by metadata rows by @gantoine in https://github.com/rommapp/romm/pull/2203
- [ROMM-1949] Fix multi rom download by @gantoine in https://github.com/rommapp/romm/pull/2206
- [ROMM-2155] Fix char bar jumping to wrong game by @gantoine in https://github.com/rommapp/romm/pull/2208
- [ROMM-2075] Use platform version icon on card by @gantoine in https://github.com/rommapp/romm/pull/2207
- [ROMM-2211] Only show missing platforms on lib manage page by @gantoine in https://github.com/rommapp/romm/pull/2212
- Fire off search if URL state prepopulated by @gantoine in https://github.com/rommapp/romm/pull/2205
Other
- Refactor task execution workers by @zurdi15 in https://github.com/rommapp/romm/pull/2178
- Add IPv6 support by @danielkoster in https://github.com/rommapp/romm/pull/2201
- Separate tests folder from backend code by @adamantike in https://github.com/rommapp/romm/pull/2234
- Move pytest.ini to backend directory by @adamantike in https://github.com/rommapp/romm/pull/2214
- Remove indirect dependency freezegun by @adamantike in https://github.com/rommapp/romm/pull/2233
- Move pytest-cov dependency to test extra by @adamantike in https://github.com/rommapp/romm/pull/2229
- Replace emoji dependency with constants by @adamantike in https://github.com/rommapp/romm/pull/2228
- Add type hints to task classes by @adamantike in https://github.com/rommapp/romm/pull/2221
- Remove uses of Props and Functions comments by @gantoine in https://github.com/rommapp/romm/pull/2187
- Replace MessageResponse with specific responses by @gantoine in https://github.com/rommapp/romm/pull/2185
- Migrate scheduler to native RQ process by @adamantike in https://github.com/rommapp/romm/pull/2224
- Migrate worker to native rq process by @gantoine in https://github.com/rommapp/romm/pull/2227
- Migrate watcher to use watchfiles library by @adamantike in https://github.com/rommapp/romm/pull/2230
- Use native 7z to extract files and calculate hashes by @gantoine in https://github.com/rommapp/romm/pull/2232
New Contributors
- @gutmanovaty made their first contribution in https://github.com/rommapp/romm/pull/2173
- @wctang made their first contribution in https://github.com/rommapp/romm/pull/2188
- @danielkoster made their first contribution in https://github.com/rommapp/romm/pull/2201
Full Changelog: https://github.com/rommapp/romm/compare/4.0.1…4.1.0-alpha.1