feat: group platforms by the device they run on

device_group in the registry places each platform on the device picker, in the navigation and on the home page. scripts/siteguides.py holds the guide text per platform: what it is, its BIOS folder, where the install command runs.
This commit is contained in:
Abdessamad Derraz committed 2026-10-22 11:50:48 +02:00
1 parent 4366db574a
commit 533b85586f
3 files changed
+460

No files matched your search

+12
View File
@@ -1,3 +1,7 @@
---
level: contribute
---
# Adding a platform
How to add support for a new retrogaming platform (e.g. a frontend like Batocera,
@@ -146,6 +150,7 @@ platforms:
myplatform:
config: myplatform.yml # platform YAML filename in platforms/
status: active # active or archived
device_group: handheld # computer, gaming-os, handheld, fpga or server
scraper: myplatform # matches PLATFORM_NAME, null if hand-maintained
schedule: weekly # re-scrape cadence, run by hand: weekly, monthly, or null
source_url: https://... # upstream data URL
@@ -159,6 +164,13 @@ platforms:
- core_b
```
`device_group` places the platform among the devices a reader picks from: on
the site's "Get your files" page, in the "Your setup" navigation and on the home
page. The groups and their labels are `DEVICE_GROUPS` in
`scripts/siteguides.py`, and the same file holds the platform's guide text
(what it is, where its BIOS folder is, where the install command runs). A
test fails when a registered platform has no group or no guide.
A platform without a scraper (`scraper: null`, `schedule: null`) keeps its YAML
as a hand-maintained file. Every registered platform has a scraper today, so
none is edited by hand: RetroPie inherits RetroArch's file set and its scraper