

by Joe Stone•0 followers•4 posts
A living campaign knowledge base with NPCs, factions, session recaps, and house rules — ready to fork and use for your own campaign.
You've got a folder somewhere. Maybe it's Google Drive. Maybe it's a stack of Notion pages. Maybe it's seventeen browser tabs you keep meaning to close.
Inside that folder is a custom subclass you built two years ago, a magic item you're pretty sure was balanced, three half-finished campaign settings, and a faction you designed for a one-shot that never happened.
You can't find any of it when you need it.
Homebrew accumulates. Most GMs never build a system for managing it — they just keep creating, keep saving things wherever, and eventually lose track of what they actually have. Here's how to fix that.
Most homebrew tools are optimized for creating — GM Binder for PDFs, Homebrewery for formatting, Notion for notes. Almost none of them are optimized for finding what you made or sharing it with someone else.
The result: brilliant homebrew gets used once, never found again, and eventually recreated from scratch.
A good organization system does three things:
Whether you're using Topicfolio, Notion, or a plain folder system, this structure works:
One document per class or subclass. Include: the full mechanics, any playtesting notes, and the version number. Yes, version number — homebrew gets revised.
Organized by rarity. A single searchable list is more useful than individual documents for items — you want to be able to scan "uncommon items" quickly when prepping a session.
One folder per setting. Inside each: world overview, factions, major locations, NPCs. Even if you never run this setting, having it organized means you can cannibalize pieces for other campaigns.
One document per adventure. Include: premise, key NPCs, maps (linked), encounter notes. Tag completed adventures so you know what's been played.
House rules, variant mechanics, optional systems. Keep this flat — one searchable document is better than a nested folder structure.
Decision 1: Public vs. Private
Some homebrew you want to share with the world. Some is table-specific. Some contains spoilers for your current campaign. Decide on a default — most GMs should default to shareable and lock things down selectively, rather than the reverse. Shareable homebrew gets feedback and gets better.
Decision 2: Living vs. Archived
"Living" homebrew is actively being used or refined. "Archived" is stuff you've finished or retired. Separate these. Archived homebrew clutters your active workspace and makes it harder to find what you're currently working with.
Three things make homebrew findable:
Consistent naming. "Ranger Subclass - Swarmkeeper (v2)" is findable. "new ranger thing FINAL" is not. Pick a naming convention and stick to it.
Tags or categories. When you save something, tag it: class type, campaign it was used in, whether it's been playtested. Even 3-4 tags dramatically improves searchability later.
One canonical home. The moment your homebrew lives in three different places (Google Drive, Discord, Notion), you will lose track of which version is current. Pick one place. Put everything there. Link to it everywhere else.
This is where most organization systems break down. You've organized everything beautifully — for yourself. But when a player asks "can I use that custom subclass you mentioned?" you're still copying text into Discord.
A better approach: publish your homebrew to a permanent, shareable URL. When a player asks, you send one link. It's always current. No PDFs to re-export, no Discord messages to scroll through.
Topicfolio Folios work well for this — a homebrew subclass or magic item collection lives at a stable URL, readable by anyone without an account. Your table bookmarks it. You update it in place. The link never goes stale.
Try it: The D&D Campaign Starter Kit shows how this looks in practice — a living document your whole table can reference.
Every time you finish a piece of homebrew:
5 minutes. Do it before you close the tab. The alternative is spending 20 minutes searching for it six months later.
📂 Free template → D&D Campaign Starter Kit — a living document structure for campaigns, ready to fork and use.
Most campaign wikis die before the third session.
A GM spends a weekend building an elaborate Notion workspace — linked databases, faction pages, NPC profiles. It's beautiful. Then they share the link with their players, two people open it, nobody navigates past the first page, and it quietly gets abandoned.
The problem isn't effort. It's architecture. A campaign wiki built for a GM's brain isn't built for a player's 90-second browse before game night.
Here's how to build one that actually gets used.
Before you build anything, decide which type you need:
The GM Reference Wiki — Deep, detailed, private. Everything you know about the world, including things players haven't discovered yet. This is for you.
The Player-Facing Wiki — Curated, scannable, public to your table. Only what players actually need between sessions. This is for them.
Most GMs build one and call it both. That's why it fails. Players drown in lore they don't need, or GMs self-censor details that would actually be useful.
Build both. Keep them separate. This post is about the player-facing wiki — the one that gets used.
Rule of thumb: if a player would ask about it at the table, it belongs in the wiki.
The 30-second pitch for your world. Tone, setting, the central conflict. Not a history lesson — a vibe check. Players should finish reading it and immediately understand what kind of campaign this is.
Not every NPC — just the ones the party has actually met. For each one:
Update this after each session. Players will check it when they can't remember "wait, which one was Maren again?"
A one-paragraph summary of each major faction. What they want, who they're allied with, who they oppose. Keep it to the factions that are currently relevant — don't dump your entire worldbuilding doc here.
One canonical list. Link it in every session invite. Eliminate the "wait, how does flanking work at this table?" conversation forever.
Newest at the top. Use the bullet-point format — not prose. Players scan, they don't read.
Every section should answer a question a player actually asks.
If a section doesn't answer a question players ask, cut it or move it to your private GM wiki.
A wiki that isn't updated after sessions is worse than no wiki — it's a source of outdated information your players will eventually distrust.
The 10-minute post-session update:
That's it. 10 minutes. Do it while the session is still fresh.
You need a wiki that lives at a stable, shareable URL your players can bookmark. Not a Discord thread. Not a Google Doc that gets stale. A permanent home.
The D&D Campaign Starter Kit on Topicfolio is structured exactly this way — world overview, NPC tracker, factions, session recaps, house rules, all in one Folio. Fork it, fill it in, share the link. No signup required for players to read it.
📂 Free template → D&D Campaign Starter Kit — everything above, pre-structured and ready to use.
Every GM has sent a session recap into the void.
You spent 20 minutes writing up what happened last session. You dropped it in Discord. Three people reacted with 👍. Nobody read it.
The problem usually isn't motivation — it's format. A wall of text recapping everything that happened in chronological order is homework. Nobody does homework before game night.
Here's how to write session recaps that players actually open, read, and reference.
A good recap does three things:
The key word is living. A recap buried in Discord is gone in 48 hours. A recap that lives at a permanent URL — one your players bookmark — is something they'll actually check before session.
Forget prose. Players don't want to read a short story about what they already did. They want to remember the important stuff fast.
Use this structure every time:
One sentence. What was this session about?
"The party broke into a Covenant warehouse, found prisoners, and accidentally became leverage against the city council."
This is the hook. It goes at the top. It tells players immediately whether they remember this session.
Not everything. The things that matter going forward.
One bullet per meaningful event. If you can't say it in one line, it's two bullets.
What's unresolved? What's coming?
This is the section players actually reread before next session. It's the cliffhanger in text form.
One or two moments worth remembering. Funny, heroic, disastrous — whatever made the table laugh or gasp.
Aldric attempted to bluff his way past two guards by claiming to be a "Covenant cheese inspector." Rolled a 19. It worked.
This is the part that gets shared. It's also what makes players feel like the campaign is worth documenting.
Here's the thing most GMs get wrong: recaps should be in one place, not scattered across Discord messages.
A single Folio with all your session recaps — newest at the top — means:
The D&D Campaign Starter Kit includes a session recap section built exactly this way. Fork it and start adding recaps after each session — it takes less than 10 minutes per session once you have the format down.
Do this for three sessions in a row and your players will start asking for the recap before the next session. That's when you know it's working.
📂 Free template → D&D Campaign Starter Kit — session recap section included, ready to use.
Folio Title:D&D Campaign Starter Kit — Free Template for GMs
Subtitle/Tagline: A living campaign knowledge base your whole table will actually use. Fork it, fill it in, share the link.
The Shattered Reach is a frontier continent rebuilt after a magical catastrophe called the Sundering — an event 200 years ago that collapsed the old empire and left wild, unstable magic across the land. Cities are walled and cautious. The wilderness is dangerous and strange. Explorers, mercenaries, and scholars all converge on the frontier for different reasons.
The central tension: a new power — the Covenant of Ash — is quietly buying up land and influence across the Reach, claiming they can "stabilize" the wild magic. Some see them as saviors. Others suspect they caused the Sundering in the first place.
Tone: Gritty but hopeful. Think low fantasy with pockets of wonder. Characters matter more than chosen ones.
Maren Voss
Role: Innkeeper / Information broker
Location: The Rusted Flagon, Duskwall City
Relationship to Party: Friendly — has helped the party twice, expects favors in return
One Secret: She's a retired Covenant operative who faked her death. She's terrified they'll find her.
Commander Orin Fell
Role: City Watch Captain, Duskwall
Location: Watch HQ, East District
Relationship to Party: Neutral, slightly suspicious
One Secret: He's been accepting bribes from the Covenant to look the other way on certain shipments.
The Pale Merchant (real name unknown)
Role: Traveling dealer in magical artifacts
Location: Unknown — appears unexpectedly
Relationship to Party: Encountered once, sold them something they shouldn't have bought
One Secret: Not human. Hasn't aged in 80 years. Collects debts in unusual currencies.
The Covenant of Ash
Goal: Consolidate control over wild magic nodes across the Reach
Current Status: Growing — recently absorbed two smaller guilds
Allied With: Several city councils, merchant families
Opposed By: The Wardens of the Old Wood, scattered resistance cells
The Wardens of the Old Wood
Goal: Preserve the wild magic as sacred, not to be controlled
Current Status: Weakening — losing members to Covenant offers
Allied With: Druidic circles, some indigenous communities
Opposed By: The Covenant of Ash
The Free Blades
Goal: No ideology — mercenary collective, profit-driven
Current Status: Neutral, for hire by anyone
Allied With: Whoever's paying
Opposed By: Nobody, currently. That could change.
Session 3 — "The Warehouse Job"
Party accepted a job from Maren to retrieve a stolen ledger from a Covenant warehouse
Discovered the warehouse also held prisoners — three Wardens being held without charge
Decided to free the prisoners, blowing their cover in the process
Orin Fell showed up at the end — let them go, but issued a formal warning
Ledger contained names of city council members on Covenant payroll
Ended with: party now holds leverage over half the city council
Session 2 — "First Night in Duskwall"
Arrived in the city, got shaken down at the gate (standard Covenant "entry tax")
Met Maren at the Rusted Flagon — she recognized one party member's sigil
Bar fight with off-duty Covenant soldiers (party started it, technically)
Heard rumors about wild magic surges near the old aqueduct district
Ended with: Maren offering the warehouse job
Session 1 — "The Road In"
Party met on the road to Duskwall after a Covenant patrol stopped them separately
Found a dead Warden on the roadside — body staged to look like a bandit attack
Decided together to bring the body to the city rather than leave it
Ended with: arrival at Duskwall gates, party unofficially formed
Flanking — Flanking grants +2 to attack rolls (not Advantage) to prevent stacking with other Advantage sources.
Inspiration — Inspiration can be stored and used to reroll any die, not just attack/save/check. Max 1 stored at a time.
Death Saves — On a failed death save, a party member can use their reaction to stabilize you (no roll needed, but they must be adjacent and use their reaction).
Downtime — We track downtime days. Between major arcs, each character gets 10 downtime days to spend on crafting, training, carousing, or research.
Table Rule: Be a fan of each other's characters. Help each other's moments land. This isn't a competition.
📍 Campaign Map — replace with your link
🎵 Session Playlist — replace with your Spotify/YouTube link
🧙 Character Sheets — replace with your D&D Beyond campaign link
📅 Session Scheduling — replace with your When2Meet or Calendly
🎲 Dice Roller — roll20.net or dice.run