# Project pack: RomM @ 9c74d01 Facts about **RomM** for an AI following the [BespokeAI handover guide](https://handoff.bespokeai.software/guide/v4.md). Pinned to one version; never changes after publication. > RomM is a self-hosted manager for game ROMs and the games you own. It scans your folders, fetches covers, descriptions and screenshots, organises by platform and collection, and lets you play many retro games right in the browser. It supports multiple users and has a clean, mobile-friendly interface. ## Setup path (checked 2026-11-03) - **Needs Docker.** Tell the person before any setup work; no light non-Docker route is documented upstream. Upstream ships a docker-compose example; no other install path was found in the pages checked. Docker Desktop on Windows may need a computer restart and an admin-only Windows feature (virtualisation); say so and let the person decide. - Verdict source: https://raw.githubusercontent.com/rommapp/romm/HEAD/examples/docker-compose.example.yml - You may be unable to download source archives or run commands in this session. The person downloads and runs things; if you cannot fetch something, give any changed file in full in chat with its path. ## Version and source - Repository: https://github.com/rommapp/romm - Pinned commit: `9c74d0143fbb876f2f62260b91c6fd0b3f590226`. Use exactly this version. - Zip the person can download in a browser: https://github.com/rommapp/romm/archive/9c74d0143fbb876f2f62260b91c6fd0b3f590226.zip - Fresh checkout (only if you have a shell and git): use the commands below in an empty folder. If this exact source is already checked out, keep your branch and use the development command; do not clone again or reset local changes. - Official docs: https://docs.romm.app - Live demo: https://demo.romm.app/. Shared demo. Don't enter real data. - Licence: **AGPL-3.0-only**. Free to use and change. If other people use your changed version, including over a network (for example a website you host for them), you must offer them your source code under the same licence. Using it privately for yourself or your household has no extra obligations. ## Commands from the pinned source - Developer commands (they may use Docker): ```sh git clone https://github.com/rommapp/romm bespoke-romm cd bespoke-romm git checkout --detach 9c74d0143fbb876f2f62260b91c6fd0b3f590226 # Prepare development requirements and local configuration first. uv sync cd frontend npm install cd .. uv run python backend/main.py ``` - Separate trial of the current upstream release (not your changes; sample data and a separate data directory only): ```sh Follow the quick start at https://docs.romm.app/latest/Getting-Started/Quick-Start-Guide, which provides a docker-compose file with RomM and MariaDB. ``` - Tools these commands use: Docker with a database, and your games organised in folders; Python 3.13 and Node for development - Develop: `uv run python backend/main.py` - Test: `uv run pytest` - Stack: python, typescript (FastAPI, Vue, Vuetify, EmulatorJS, Docker). Difficulty for a non-developer with an AI: **advanced**. A Python FastAPI back end with a Vue front end and several metadata providers. Collections and users are settings; new features touch many parts. - The project's own AI instructions, in the repository: `AGENTS.md`. Personal data: **yes**. Stored in: A database plus your library folders, assets (saves, states) and resources. Secrets are entered by the person, never in chat. --- Later, only when a step needs it: [reference.md](https://handoff.bespokeai.software/p/romm/9c74d01/r3/reference.md) (customisation points, must-keep-working, data and costs, coding conventions) · [hosting.md](https://handoff.bespokeai.software/p/romm/9c74d01/r3/hosting.md) (long-term hosting; hosts are paid third parties) · [bespoke.yaml](https://handoff.bespokeai.software/p/romm/9c74d01/r3/bespoke.yaml) · [SKILL.md](https://handoff.bespokeai.software/p/romm/9c74d01/r3/SKILL.md)