contribute
Add a recipe
Git is the database and the moderation queue. A recipe is one TOML file; contributing is a pull request — which keeps the book free to host, trivially mirrorable, and reviewed before anything lands. You don't need to know git, though:
easiest path
The Suggest a recipe form fills out the TOML for you and opens a pull request under your own GitHub account — no git, no setup.
Suggest a recipe →The honest rule
status is mandatory and starts at unverified. A
recipe is only working once you've run it on a
real Deck and recorded the SteamOS build in verified_on. Never
upgrade a status you haven't personally confirmed — the book's only value
is that its statuses are trustworthy.
| unverified | auto-generated or guessed; never actually run |
| needs-test | structure checked (engine, binary, data files) but not launched |
| working | confirmed running on a real Deck — verified_on required |
| borked | confirmed it does NOT run, with notes on why |
The flow
-
Copy
recipes/_template.tomltorecipes/<slug>.toml— the slug is the filename, lowercase with hyphens. -
Fill in
[game],[launch], and — for Windows titles —[proton]. -
Set an honest
status, and addcaveats— the one thing the next person needs to know. - Open a pull request. CI validates the recipe; a failing recipe blocks the build.
What a finished recipe looks like
One TOML file — that's the whole thing. The two highlighted lines are the rules that make the book worth trusting.
[game]
title = "Mighty Fight Forever" # shown in Game Mode
slug = "mighty-fight-forever" # = the filename
aliases = ["MFF"] # extra search terms
type = "proton" # proton | native
engine = "other"
steam_appid = ""
sgdb_id = "10045" # SteamGridDB art id
[launch]
binary = "MightyFight.exe" # the file Steam runs
launch_options = "%command%"
requires_files = []
[proton]
version = "GE-Proton" # which build — see /proton-packs
winetricks = ["vcrun2022"]
notes = "Force fullscreen in the options menu."
[art]
cover = "auto" # hero/logo/icon too — art is fetched by name
[meta]
status = "needs-test" # never "working" unless YOU ran it on a Deck
verified_on = ""
contributor = "you"
protondb_tier = "gold" # community hint, kept separate from status
caveats = "Bring your own copy — config only, never a download link." Links, not files — and ProtonDB tiers
A recipe can carry outbound links so the site never has to host anything: a SteamGridDB page where users pick their own artwork, a ProtonDB report, and any number of community guides (Reddit threads, blog posts, videos). For Steam games you can record the cached ProtonDB medal — a community rating shown separately from this recipe's own status:
Two hard lines
never crossed
Recipes describe how to configure a game — binary, Proton version, winetricks, launch options. They never say where to obtain game files, and never describe defeating copy protection. Art is fetched on the user's machine, never rehosted here.