DND Engine Registry

Content Pipeline

Bring your own .resource file(s), get a Plan showing exactly what would be created or changed, then Apply to write them into content/ for real. Nothing is written until you confirm the Plan.

1 Source
2 Plan
3 Apply

Only .resource files are ever read — never .py (that's the whole point of the format: no arbitrary code execution).

Matched to a planned item by filename — an image named dragon_wand.png attaches to any record whose icon_id/image_id is dragon_wand, regardless of which .resource file it came from. No match, no problem — the item still applies fine and shows the usual placeholder until art is added.

Public repos only, fetched read-only via GitHub's API — every .resource file directly under that path gets planned, and any sibling .png there (matched by filename, same rule as upload mode) is picked up as icon art automatically.