Ways to Contribute
Every entry below is a doorway into a real subsystem. Pick whichever one sparks your interest — small PRs are as welcome as big ones.
Help wanted: someone who knows how to build a community
This is the one I can't do myself. I can design a rules engine, a Tag DSL, a transport layer — architecture is my day job. I have no real experience building or maintaining a safe, welcoming community: moderation norms, onboarding new members, de-escalating conflict, keeping a Discord from curdling as it grows. The Fate's Edge Discord is brand new, and right now it's just me guessing.
If community moderation, Discord server design, or Codes-of-Conduct-in-practice (not just in writing — see the project's Code of Conduct) is something you know how to do, I would genuinely love the help. This isn't a "nice to have" — it's a real gap. Say hello in Discussions or the Discord, or email support@fates-edge.com, and let's talk about what that could look like.
Translate and review the rules and interface
Help someone spend less effort understanding the tool and more attention on the game. Spanish interface and core-document drafts need fluent readers to check wording, rules examples, and terminology. You can start with one page or one screen, and contributions in other languages are welcome.
Read the TRANSLATIONS guide for the glossary, exact file locations, a five-step first contribution, and a correction checklist. No coding experience is required. I’m from Minnesota, so Somali, Hmong, Karen, and other translators from our immigrant communities are especially welcome. The guide includes worldwide priorities and welcomes Standard Somali and Maay, White and Green Hmong, and S’gaw and Pwo Karen.
Extend the Tag DSL
Add narrative tools and hooks into world state, or better ergonomics for things the protocol currently expresses clumsily. Start in fates-edge-ai-gm-bot's tag-protocol module, and read the directive reference first.
One check before you add a verb. The whole protocol is 24 directives, and it stays that size because the ruleset is self-similar: crafting, travel, downtime, magic and warfare all run on a roll, a clock, a four-row outcome matrix and a two-currency economy, with no additions. Adding the entire warfare module cost the protocol zero new verbs.
So if your extension needs a new directive, it's worth one more look — usually the thing you want is a roll, a clock, an outcome, or a piece of table state wearing a costume. PRs that remove a verb are as welcome as ones that add one.
Build new client surfaces
Mobile app, Slack bot, custom VTT — anything that speaks the room protocol can join the ecosystem. The transport layer is designed for exactly this.
Add new LLM drivers
The AI GM is driver-agnostic. Anthropic, Groq, Gemini, and local models are all fair game — implement the driver interface and drop it in.
Improve the transport layer
Event parity across web, desktop, terminal, Discord, Roll20, Foundry, and Python clients; reliability and scaling work always welcome.
Author adventure modules
JSON-based, rules-native, AI-optional. If you'd rather write than code, this is the highest-leverage way to contribute — and unlike code, it needs no review queue: see the Community Content Program, which grants commercial rights up front.
A module that follows these conventions drops straight into play alongside published material. One that doesn't will quietly fight the engine:
- Rate adversaries by Threat Level, 1–10. Not Tier (that's a player character's XP band) and not Cap (that's a Follower's Capability). A creature has neither.
- State Harm Levels, never hit points.
3 (standard),8 (advanced),8 per phase, orNone (puzzle)— and a puzzle creature must state how it actually ends, since attacks won't do it. - Clocks are 4, 6, 8 or 10 segments. Nothing else. A one-segment "clock" is a condition; write it as one.
- DV runs 2 to 5. Above 5 is a defect, not a hard encounter — a tougher opponent worsens Position, which is what Position is for.
- There are twelve skills — Melee, Ranged, Athletics, Stealth, Endurance, Craft, Sway, Deception, Performance, Insight, Lore, Arcana. An expansion may add one, and Psionics is the precedent, but only if it cannot be expressed as an existing skill under a different attribute. "Resolve" is Spirit + Endurance; "Command" is Presence + Sway. Neither earned a slot.
- Military units use Capability 1–5 and Scale I–IV. Quality and size, recorded separately, because a large bad army is a common thing.
Every one of those is in the SRD; the list is here because they're the six that get missed most often.
Expand the voice stack
New TTS engines, ambience systems, or adapters for the (fully toggleable) voice pipeline.
Enhance the web client
VTT tools, offline mode, UI polish — styled against the shared theme documented on the Design Tokens page.
Contribute to the terminal client
ANSI UI, WS protocol, dice UX — for the devs who never want to leave the terminal.
Write docs and examples
Tutorials, diagrams, onboarding guides. This portal is fair game for PRs too — it's just an Astro site in fates-edge-dev.
First PR checklist
- Read the architecture overview for the subsystem you're touching.
- Open an issue first for anything non-trivial — it's the fastest way to avoid duplicate or misdirected work.
- Tests are expected for the rules engine, transport layer, and Tag DSL; docs and content PRs don't need them.
- Say hello in Discussions or the Discord — the maintainer (Nick) responds in both.