RomM for Switch - Unofficial - but working ;)
▲ 27 r/RomM+2 crossposts

RomM for Switch - Unofficial - but working ;)

[Community Project] RomM Switch Client is now public 🎮

A friend in the RomM community has been quietly building something pretty damn cool, and he gave me the go-ahead to finally share it publicly.

RomM Switch Client

A community-built client for connecting a Nintendo Switch to your own self-hosted RomM instance and library.

See it running

Part 1:
https://youtu.be/K_2bpNv8Yp0 (patience 60 fps youtube processing)

Part 2:
https://youtube.com/shorts/ErpHKp8dFZw

This isn't somebody launching a public ROM hosting service.

You host RomM. You control the instance. You control the library. The Switch client connects to your setup.

And now the project itself is public:

Source / Repo:
https://git.moveweight.com/bikeborb/RomM-Switch-Client

It's still an independent community project, not an official RomM release, so keep that in mind while testing it.

But it's out in the wild now.

If you're already running RomM and you've got a Switch you like tinkering with, check it out. Test it. Break it. Open issues. Suggest features. Help turn it into something even better.

Huge credit to the developer for putting the project out publicly and letting the rest of the community get their hands on it. ❤️

The RomM ecosystem just keeps expanding.

RomM on the Switch. Let's go.

u/Agitated-Total80 — 6 days ago
▲ 28 r/RomM+5 crossposts

ROMarr — an *arr that fills your RomM library for you (request → Prowlarr → download → imported → rescan)

RomM is where my games live, but filling it was still manual. So I built the missing piece: ROMarr, an *arr for ROMs.

https://github.com/BlizzHacker/romarr

Ask for a game → it searches your indexers through Prowlarr → scores the releases → hands the winner to qBittorrent / SABnzbd / NZBGet → picks the actual ROM out of the finished download → files it into your RomM library → triggers a rescan so it shows up without you touching anything.

Why it isn't just Radarr pointed at ROMs. Cartridge releases break the assumptions a film downloader makes:

  • The wrong file is usually in the box — readmes, box art, and several regional dumps in one archive.
  • Size is a signal, not a preference. A 40GB "SNES" result is a romset or a PC port. Smaller is usually more correct, the opposite of video.
  • Platform names collide. "Super Nintendo Entertainment System" contains "Nintendo Entertainment System", so naive matching sends every SNES request into the NES folder.

RomM specifics

  • Use a dedicated RomM account, not your admin one — it only needs enough to trigger a scan.
  • That account needs permission to run tasks, or the post-import rescan comes back 403 and your new ROM sits there until RomM's next scheduled scan. Took me a while to spot that on my own instance.
  • LIBRARY_PATH is RomM's library root as ROMarr sees it, so in Docker it's the container path, not the host path.
  • It also drives Gaseous, Retrom, or a plain folder — so a Batocera handheld or an ES-DE cabinet can sit alongside your RomM and take specific platforms by rule (N64 to the cabinet, Game Boy to the handheld, everything else to RomM).

Interactive search shows every release with its score and the reason for that score next to it, plus a Grab button, so when you disagree with the ranking you just take the one you wanted. That page exists because it picked wrong on me twice in a week — once a Wii Virtual Console WAD for a Genesis request, once a Steam compilation that outranked the real cartridge.

Running it

docker run -d --name romarr -p 7878:7878 \
  -e PUID=1000 -e PGID=1000 \
  -v ./config:/config -v /path/to/roms:/roms -v /path/to/downloads:/downloads \
  ghcr.io/blizzhacker/romarr:latest

Multi-arch (amd64 / arm64 / armv7), commented docker-compose.yml in the repo, and a Proxmox LXC one-liner if that's your thing. MIT.

Fair warning on provenance: most of the code was written by Claude with me directing and testing it against my own stack — a live Prowlarr, qBittorrent, SABnzbd and a 72k-game RomM. 218 tests, and scoring changes get verified by re-scoring a frozen set of real Prowlarr results old-vs-new so a fix for one release is shown not to have moved any others.

Happy to take bug reports here or on GitHub — the last outside report turned into three fixes and a test.

u/Super_Classroom_8480 — 8 days ago