Integrations

RomM

RomM is a self-hosted game-library manager for emulator collections. It scans a structured ROM library, adds metadata and artwork, and stores saves, states, assets, and app config separately from the game files.

What Stackarr manages

  • Optional Docker Compose profile: romm
  • Private local bind by default: 127.0.0.1:${ROMM_WEB_PORT:-7583}
  • App container: rommapp/romm
  • Shared Postgres database: ${ROMM_DB_NAME:-romm} on the database service
  • Shared Redis cache: redis
  • Library mount: ${ROMM_LIBRARY_ROOT}/romm/library
  • Durable app paths for assets, config, and fetched resources
  • Dashboard, CLI, MCP, and Portless service-link visibility

Privacy stance

Stackarr does not publish RomM by default. Use the local URL or Portless alias first. If you later decide to expose it, add a Cloudflare route intentionally instead of relying on setup defaults.

docker exec app /app/bin/stackarr romm enable
docker exec app /app/bin/stackarr up
docker exec app /app/bin/stackarr romm status

Folder structure

RomM expects the game library to follow its platform-oriented folder structure. Keep the actual ROM library under your configured Games folder and let Stackarr keep RomM's database/assets/config under the app config root.

Metadata providers

Onboarding can save RomM metadata provider credentials into local runtime config:

  • Chef's Choice: Hasheous + IGDB + SteamGridDB + RetroAchievements
  • French Connection: ScreenScraper + RetroAchievements
  • Twitch Fanboy: IGDB + Playmatch
  • Quick Starter: Hasheous only
  • Custom: choose individual providers

Provider setup details live in the RomM docs: IGDB, ScreenScraper, SteamGridDB, RetroAchievements, Hasheous, and Playmatch.

On this page