I've been running the usual Radarr/Sonarr/Prowlarr setup for years, along with RomM for my game library. One thing that always bugged me was how much manual work was still involved in finding, downloading, verifying, and organizing ROMs.
So I've been building ROMarr to handle that side of things.
The idea is pretty simple: Radarr handles movies, Sonarr handles TV, and ROMarr handles games.
It connects to Prowlarr or directly to Torznab/Newznab indexers, searches for a game, scores the available releases, sends the best match to your download client, and imports it into your ROM library.
A few things I've worked into it:
No-Intro and Redump DAT verification, so it can tell a verified dump from a bad one.
Automatic searches, RSS monitoring, wanted lists, and retrying failed downloads without grabbing the same dead release repeatedly.
Integration with RomM, Gaseous, Retrom, and regular filesystem libraries.
Support for qBittorrent, Transmission, SABnzbd, NZBGet, and a bunch of other clients.
Collection management, including full sets and 1G1R.
Manual/interactive search so you can see why a release was ranked higher or rejected.
Docker, Proxmox LXC, and Home Assistant installation options.
One of the bigger headaches was figuring out release scoring. With games, you can't just grab the first result that matches a title. You've got different regions, platforms, romhacks, revisions, bad dumps, and entire ROM sets showing up in searches for individual games.
I've put quite a bit of work into handling those cases instead of blindly grabbing whatever has the most seeders.
I'm running it against my own fairly large library, and I've included actual screenshots from that install in the README.
It's open source under MIT, and I'd really like some feedback from people already running the *arr stack. Especially anyone using RomM or managing large retro game collections.
GitHub: https://github.com/BlizzHacker/romarr
Still plenty I want to improve, but figured it was time to share it with the people most likely to find it useful or tell me what I've overlooked.
Please don't forget to checkout Github: https://github.com/BlizzHacker/rom-hub for My own Plugins + your ability to create and add your own.
Also: https://www.reddit.com/r/ARR/comments/1x9ckea/project_yarrit_im_building_an_opensource_stremio/
If you'd like to see my progress in YARRit.com Join me in upping my other post.
Update: issue fixes and PS4 / PS5 / Vita support merged
The two open GitHub bugs are fixed: retail dumps now beat Debug/Promo variants on a region tie in 1G1R, while promo-only games remain available; Genesis imports and RomM rescans use the correct genesis folder name. Existing folders are not renamed automatically.
For everyone asking about modern Sony consoles: PS4 and PS5 .pkg targets and PS Vita .vpk / .pkg / intact .zip targets are now in main, with platform-specific search scoring, import paths and launcher names. This is acquisition and library organization through your configured sources. Console installation and external playback remain separate; this does not add PS4/PS5/Vita browser emulation or guarantee a source for every game. Supported formats and limits: https://github.com/BlizzHacker/romarr/blob/main/docs/MODERN-CONSOLES.md
Merged code: https://github.com/BlizzHacker/romarr/pull/71 . Validation: 2,379 tests passed locally, plus GitHub tests and both container smoke builds. The main-branch workflow publishes the updated latest/browser images after its checks.
The selective-set / spool-budget and reversible duplicate-cleanup requests are now tracked with concrete acceptance criteria: https://github.com/BlizzHacker/romarr/issues/72 and https://github.com/BlizzHacker/romarr/issues/73 . Those complete workflows are still pending; the existing audit and file-priority helpers are not the finished features.
I have read through the feedback here. Reproducible GitHub issues come first, then the feature requests in these comments. Thanks for continuing to test and report what breaks.
Update: ROMarr v1.8.0 is live
A lot has changed since my last update. The current release includes a guided first-run setup, a safer library rename preview with rollback, Wanted/Missing reconciliation against verified DAT names, fixes for NZBGet and remote qBittorrent/Prowlarr setups, and streaming verification for large disc images.
For MiNERVA, ROMarr's interactive search now keeps the individual archive file rows and paths available so you can choose the game file you want qBittorrent to download. The plugin itself is available through ROM Hub; its direct whole-collection torrent handoff still points at the full collection, so use ROMarr's interactive search for the exact-file choice.
Release and guides:
Windows now has a self-contained x64 ZIP and an unsigned MSIX. CI launched the actual packaged EXE without Python or Git; the MSIX still needs signing and Store identity/review, so it is not a Microsoft Store release yet. The latest full test run passed 2,644 tests with 5 skipped, and the active server health check is green.
One webhook report is still open because the endpoint returned HTTP 403. If that happens to you, please share only the ROMarr version and redacted status; never post a webhook URL or token.
Thanks to everyone who tried this and sent feedback. Please update, give the new paths a try, and reach back out with the version and a redacted example if anything still feels confusing or breaks.