This is an automated archive made by the Lemmit Bot.

The original was posted on /r/selfhosted by /u/arcaneasada_romm on 2024-03-13 20:45:16.


The team behind the coolest self-hosted ROM manager is proud to release v3.0, our most feature-packed release to date! Included are some highly requested features, many quality-of-life changes, and more bug fixes than you can shake a stick at.

⚠️ Breaking changes ⚠️

This release introduces exciting new features that require some changes to how RomM is set up and configured. If you’re currently running a 2.x version, please review the migration guide before upgrading.

EmulatorJS player

Thanks to the great work on the EmulatorJS project, you can now play some of your favorite retro games on your browser, right within RomM! Plus, our implementation binds directly with your save and state files (more below), allowing you to save/load games without having to handle files. Learn more about the integration and see which platforms are supported on the wiki.

Saves and save states

With explicit support for game saves and save states, you can now upload, view, and download them from the details page of any game in your library. When playing games with EmulatorJS, you’ll have the option to pick and load a save and/or save state, and the game will boot with that save in slot 1. Anytime you save, RomM will automatically update that save file on the server, so next time you can continue where you left off.

A new license

Starting with this release, RomM (previously licensed under GPLv3) will now be licensed under AGPLv3. We’ve chosen to make this change to promote contributions to the project and protect the work we’ve done over the past year. This change should have no impact for the majority of users; RomM is, and will continue to be, free and open-source, now and forever.

The release notes and full list of changes can be found on Github.

So what’s next?

We’re happy to announce that we’ve hit most of the short term goals we outlined in our last announcement:

  • Editing the config.yml file from the UI
  • A “recently added” sections on the home page
  • Scheduled backend tasks for automated library manager
  • Mega-refactor of our backend and API endpoints

In the short term, we’re working on adding more metadata sources from a shortlist we’ve compiled, which should allow scans to find more games and improve the quality of metadata. We also plan to add support for more file types (DCLs, patches, firmware, etc.), and allow uploading BIOS files, both for storage and for use with EmulatorJS.

Our long-term plans remain unchanged: .DAT file support (automated game recognition via hash comparison) and physical device management (syncing games, saves, and states between devices).

As always, if you have any questions, please post them in the comments, and we’ll be happy to answer them!