{"id":13495309,"url":"https://github.com/rommapp/romm","last_synced_at":"2026-04-01T22:38:10.327Z","repository":{"id":147208880,"uuid":"611338935","full_name":"rommapp/romm","owner":"rommapp","description":"A beautiful, powerful, self-hosted rom manager and player.","archived":false,"fork":false,"pushed_at":"2025-05-05T01:06:52.000Z","size":294490,"stargazers_count":3657,"open_issues_count":103,"forks_count":159,"subscribers_count":19,"default_branch":"release","last_synced_at":"2025-05-07T00:32:25.213Z","etag":null,"topics":["emulation","open-source","retrogaming","rommapp","self-hosted"],"latest_commit_sha":null,"homepage":"https://romm.app","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rommapp.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"open_collective":"romm"}},"created_at":"2023-03-08T16:11:01.000Z","updated_at":"2025-05-06T21:28:38.000Z","dependencies_parsed_at":"2024-09-09T18:36:28.387Z","dependency_job_id":"7087e66c-da96-46c5-a636-9e1469e26869","html_url":"https://github.com/rommapp/romm","commit_stats":{"total_commits":3246,"total_committers":39,"mean_commits":83.23076923076923,"dds":"0.37985212569316085","last_synced_commit":"6022d365f3566294fde06c0b1201c67568f7a109"},"previous_names":["zurdi15/romm"],"tags_count":101,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rommapp%2Fromm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rommapp%2Fromm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rommapp%2Fromm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rommapp%2Fromm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rommapp","download_url":"https://codeload.github.com/rommapp/romm/tar.gz/refs/heads/release","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254029004,"owners_count":22002283,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["emulation","open-source","retrogaming","rommapp","self-hosted"],"created_at":"2024-07-31T19:01:33.385Z","updated_at":"2026-01-18T08:04:19.833Z","avatar_url":"https://github.com/rommapp.png","language":"Python","readme":"\u003c!-- trunk-ignore-all(markdownlint/MD033) --\u003e\n\u003c!-- trunk-ignore(markdownlint/MD041) --\u003e\n\u003cdiv align=\"center\"\u003e\n\n  \u003cimg src=\".github/resources/isotipo.png\" height=\"180px\" width=\"auto\" alt=\"romm logo\"\u003e\n  \u003cbr /\u003e\n  \u003cimg src=\".github/resources/logotipo.png\" height=\"45px\" width=\"auto\" alt=\"romm logotype\"\u003e\n\n  \u003ch3 style=\"font-size: 25px;\"\u003e\n    A beautiful, powerful, self-hosted rom manager.\n  \u003c/h3\u003e\n  \u003cbr/\u003e\n\n[![license-badge-img]][license-badge]\n[![release-badge-img]][release-badge]\n[![docker-pulls-badge-img]][docker-pulls-badge]\n\n[![discord-badge-img]][discord-badge]\n[![unraid-badge-img]][unraid-badge]\n[![wiki-badge-img]][wiki]\n\n  \u003c/div\u003e\n\u003c/div\u003e\n\n# Table of Contents\n\n- [Table of Contents](#table-of-contents)\n- [Overview](#overview)\n  - [Features](#features)\n  - [Preview](#preview)\n- [Installation](#installation)\n- [Configuration](#configuration)\n  - [Folder Structure](#folder-structure)\n  - [Configuration File](#configuration-file)\n  - [Scheduler](#scheduler)\n- [Naming Convention](#naming-convention)\n  - [Platform Support](#platform-support)\n  - [Tag Support](#tag-support)\n- [Community](#community)\n  - [Support](#support)\n  - [Our Friends](#our-friends)\n\n# Overview\n\nRomM (ROM Manager) allows you to scan, enrich, browse and play your game collection with a clean and responsive interface. With support for multiple platforms, various naming schemes, and custom tags, RomM is a must-have for anyone who plays on emulators.\n\n## Features\n\n- Scans and enhance your game library with metadata from [IGDB][igdb-api], [Screenscraper][screenscraper-api] and [MobyGames][mobygames-api]\n- Metadata available for [400+ platforms][platform-support]\n- Play games directly from the browser using [EmulatorJS][wiki-emulatorjs]\n- Share your library with friends with limited access and permissions\n- Official apps for [Playnite][playnite-app] and [muOS][muos-app]\n- Supports mutli-disk games, DCLs, mods, hacks, patches, and manuals\n- Parse and [filter by tags][tag-support] in filenames\n- View, upload, update, and delete games from any modern web browser\n\n## Preview\n\n|                                      🖥 Desktop                                       |                                                           📱 Mobile                                                           |\n| :-----------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------: |\n| \u003cimg src=\".github/resources/screenshots/preview-desktop.gif\" alt=\"desktop preview\" /\u003e | \u003cimg style=\"width: 325px; aspect-ratio: auto;\" src=\".github/resources/screenshots/preview-mobile.gif\" alt=\"mobile preview\" /\u003e |\n\n# Installation\n\nTo start using RomM, check out the [Quick Start Guide][wiki-quick-start-guide] in the wiki. If you are having issues with RomM, please review the page for [troubleshooting steps][wiki-troubleshooting] and common issues, or join the [Discord][discord-invite] for support from the community.\n\n# Configuration\n\n## Folder Structure\n\nAs mentioned in the installation section, RomM requires a specific folder structure. The two supported structures are as follows:\n\n\u003ctable border=\"0\"\u003e\n \u003ctr\u003e\n    \u003cth style=\"text-align: center\"\u003e\u003cb\u003eStructure A (recommended)\u003c/b\u003e\u003c/tthd\u003e\n    \u003cth style=\"text-align: center\"\u003e\u003cb\u003eStructure B (fallback)\u003c/b\u003e\u003c/th\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n  \u003ctd\u003e\n    \u003ccode\u003elibrary/roms/gbc/game_1.gbc\u003c/code\u003e\n  \u003c/td\u003e\n  \u003ctd\u003e\n    \u003ccode\u003elibrary/gbc/roms/game_1.gbc\u003c/code\u003e\n  \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n    \u003ctd\u003e\n      \u003cpre\u003e\n        library/\n        ├─ roms/\n        │  ├─ gbc/\n        │  │  ├─ game_1.gbc\n        │  │  └─ game_2.gbc\n        │  │\n        │  ├─ gba/\n        │  │  ├─ game_3.gba\n        │  │  └─ game_4/\n        │  │     ├─ game_4.gba\n        │  │     ├─ dlc\n        │  │     │  ├─ game_4_dlc_1.7z\n        │  │     │  └─ game_4_dlc_2.7z\n        │  │     ├─ hack\n        │  │     │  └─ game_4_hardmode.rar\n        │  │     ├─ manual\n        │  │     │  └─ game_4_manual.pdf\n        │  │     ├─ mod\n        │  │     │  └─ game_4_crazy_mode.zip\n        │  │     ├─ patch\n        │  │     │  └─ game_4_patch_v1.1.zip\n        │  │     ├─ update\n        │  │     ├─ demo\n        │  │     ├─ translation\n        │  │     └─ prototype\n        │  │\n        │  └─ ps/\n        │     ├─ game_5/\n        │     │   ├─ game_5_cd_1.iso\n        │     │   └─ game_5_cd_2.iso\n        │     │\n        │     └─ game_6.iso\n        │\n        └─ bios/\n           ├─ gba/\n           │  └─ gba_bios.bin\n           │\n           └─ ps/\n              ├─ scph1001.bin\n              ├─ scph5501.bin\n              └─ scph5502.bin\n      \u003c/pre\u003e\n    \u003c/td\u003e\n    \u003ctd\u003e\n      \u003cpre\u003e\n        library/\n        ├─ gbc/\n        │  └─ roms/\n        │     ├─ game_1.gbc\n        │     └─ game_2.gbc\n        │\n        ├─ gba/\n        │  ├─ roms/\n        │  │  ├─ game_3.gba\n        │  │  └─ game_4/\n        │  │     ├─ game_4.gba\n        │  │     ├─ dlc\n        │  │     │  ├─ game_4_dlc_1.7z\n        │  │     │  └─ game_4_dlc_2.7z\n        │  │     ├─ hacks\n        │  │     │  └─ game_4_hardmode.rar\n        │  │     ├─ manuals\n        │  │     │  └─ game_4_manual.pdf\n        │  │     ├─ mods\n        │  │     │  └─ game_4_crazy_mode.zip\n        │  │     ├─ patch\n        │  │     │  └─ game_4_patch_v1.1.zip\n        │  │     ├─ update\n        │  │     ├─ demo\n        │  │     ├─ translation\n        │  │     └─ prototype\n        │  │\n        │  └─ bios/\n        │     └─ gba_bios.bin\n        │\n        └─ ps/\n           ├─ roms/\n           │  ├─ game_5/\n           │  │  ├─ game_5_cd1.iso\n           │  │  └─ game_5_cd2.iso\n           │  │\n           │  └─ game_6.iso\n           │\n           └─ bios/\n              ├─ scph1001.bin\n              ├─ scph5501.bin\n              └─ scph5502.bin\n      \u003c/pre\u003e\n    \u003c/td\u003e\n \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003e [!TIP]\n\u003e For folder naming conventions, review the [Platform Support][platform-support] section. To override default system names in the folder structure (if your directories are named differently), see the [Configuration File][configuration-file] section.\n\n## Configuration File\n\nRomM's \"understanding\" of your library can be configured with a `config.yaml` file or through the `config` tab in the `Control Panel` under the `Settings` section. Refer to the [example config.yml][configuration-file-example] file for guidance on how to configure it and the [example docker-compose.yml][docker-compose-example] file on how to mount it into the container.\n\n## Scheduler\n\nThe scheduler allows you to schedule async tasks that run in the Redis container at regular intervals. Jobs can be run at a specific time in the future, after a time delta, or at recurring internals using cron notation. The [wiki page on the scheduler][wiki-scheduled-tasks] has more information on which tasks are available and how to enable them.\n\n# Naming Convention\n\n## Platform Support\n\nIf you adhere to the [RomM folder structure][folder-structure], RomM supports all platforms listed on the [Supported Platforms][wiki-supported-platforms] page. **The folder is case-sensitive and must be used exactly as it appears on the list.** When scanning your library, RomM will use the folder name to determine the platform and fetch the appropriate game information, metadata, and cover art.\n\n## Tag Support\n\nGames can be tagged with region, revision, or other tags by using parentheses in the file name. Additionally, you can set the region and language by adding a prefix: (USA), [reg-J], (French), [De].\n\n- Revision tags must be prefixed with **\"rev \"** or **\"rev-\"** (e.g. **(rev v1)** or **(rev-1)**)\n- Other tags will also be imported, for example: **my_game [1.0001]\\(HACK\\)[!].gba**\n\nTags can be used to search for games in the search bar. For example, searching for **(USA)** will return all games with the USA tag.\n\n# Community\n\nHere are a few projects maintained by members of our community. Please note that the RomM team does not regularly review their source code.\n\n- [romm-comm][romm-comm-discord-bot]: Discord Bot by @idio-sync\n- [DeckRommSync][deck-romm-sync]: SteamOS downloader and sync by @PeriBluGaming\n- CasaOS app via the [BigBear App Store][big-bear-casaos]\n\nJoin us on Discord, where you can ask questions, submit ideas, get help, showcase your collection, and discuss RomM with other users.\n\n[![discord-invite-img]][discord-invite]\n\n## Support\n\nConsider supporting the development of this project on Open Collective.\n\n[![oc-donate-img]][oc-donate]\n\n## Our Friends\n\nHere are a few projects that we think you might like:\n\n- [EmulatorJS](https://emulatorjs.org/): An embeddable, browser-based emulator\n- [RetroDECK](https://retrodeck.net/): Retro gaming on SteamOS and Linux\n- [ES-DE Frontend](https://es-de.org/): Emulator frontend for Linux, macOS and Windows\n- [Gaseous](https://github.com/gaseous-project/gaseous-server): Another ROM manager with web-based emulator\n- [Retrom](https://github.com/JMBeresford/retrom): A centralized game library/collection management service\n- [Steam ROM Manager](https://steamgriddb.github.io/steam-rom-manager/): An app for managing ROMs in Steam\n\n\u003c!-- Sections --\u003e\n\n[folder-structure]: #folder-structure\n[platform-support]: #platform-support\n[tag-support]: #tag-support\n[configuration-file]: #configuration-file\n\n\u003c!-- Files --\u003e\n\n[docker-compose-example]: examples/docker-compose.example.yml\n[configuration-file-example]: examples/config.example.yml\n\n\u003c!-- Wiki links --\u003e\n\n[wiki]: https://docs.romm.app/latest/\n[wiki-supported-platforms]: https://docs.romm.app/latest/Platforms-and-Players/Supported-Platforms/\n[wiki-troubleshooting]: https://docs.romm.app/latest/Troubleshooting/\n[wiki-emulatorjs]: https://docs.romm.app/latest/Platforms-and-Players/EmulatorJS-Player/\n[wiki-scheduled-tasks]: https://docs.romm.app/latest/Maintenance/Scheduled-Tasks/\n[wiki-quick-start-guide]: https://docs.romm.app/latest/Getting-Started/Quick-Start-Guide/\n\n\u003c!-- Badges --\u003e\n\n[license-badge-img]: https://img.shields.io/github/license/rommapp/romm?style=for-the-badge\u0026color=a32d2a\n[license-badge]: LICENSE\n[release-badge-img]: https://img.shields.io/github/v/release/rommapp/romm?style=for-the-badge\n[release-badge]: https://github.com/rommapp/romm/releases\n[discord-badge-img]: https://img.shields.io/badge/discord-7289da?style=for-the-badge\n[discord-badge]: https://discord.gg/P5HtHnhUDH\n[unraid-badge-img]: https://img.shields.io/badge/Unraid-f57842?style=for-the-badge\u0026labelColor=ee512b\n[unraid-badge]: https://forums.unraid.net/topic/149738-support-eurotimmy-romm-rom-manager-by-zurdi15/\n[wiki-badge-img]: https://img.shields.io/badge/Wiki-736e9b?style=for-the-badge\n[docker-pulls-badge-img]: https://img.shields.io/docker/pulls/rommapp/romm?style=for-the-badge\u0026label=pulls\n[docker-pulls-badge]: https://hub.docker.com/r/rommapp/romm\n\n\u003c!-- Links --\u003e\n\n[discord-invite-img]: https://invidget.switchblade.xyz/P5HtHnhUDH\n[discord-invite]: https://discord.gg/P5HtHnhUDH\n[oc-donate-img]: https://opencollective.com/romm/donate/button.png?color=blue\n[oc-donate]: https://opencollective.com/romm\n\n\u003c!-- External links --\u003e\n\n[igdb-api]: https://api-docs.igdb.com/#account-creation\n[screenscraper-api]: https://www.screenscraper.fr/membreinscription.php\n[mobygames-api]: https://www.mobygames.com/info/api/\n[big-bear-casaos]: https://github.com/bigbeartechworld/big-bear-casaos\n[romm-comm-discord-bot]: https://github.com/idio-sync/romm-comm\n[deck-romm-sync]: https://github.com/PeriBluGaming/DeckRommSync-Standalone\n[playnite-app]: https://github.com/rommapp/playnite-plugin\n[muos-app]: https://github.com/rommapp/muos-app\n","funding_links":["https://opencollective.com/romm"],"categories":["Python","游戏","Table of Contents","self-hosted"],"sub_categories":["资源传输下载","Game Launcher"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frommapp%2Fromm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frommapp%2Fromm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frommapp%2Fromm/lists"}