Inspiration

We moderate a few communities ourselves, and the frustration is something we've both lived. You open a post, spend time on it, make a decision, and then realise a teammate already handled it two minutes ago. Or you're looking at a long queue and have absolutely no idea what your co-mods are doing, who is active, or which posts have already been reviewed. You end up DMing each other on Discord just to avoid stepping on each other's toes.

That felt wrong to us. Every other team tool, Slack, Notion, even Google Docs shows you what your teammates are doing in real time. Reddit mod tools don't. Mods are treated as if they're working alone, even when five of them are online at the same time. ModBridge started as our attempt to fix just that.

What it does

ModBridge adds a real-time coordination layer directly inside Reddit's mod interface. It is built around the idea that mod teams need visibility into each other's work without having to leave Reddit or ping each other on external platforms.

A moderator can claim a post with one click to signal to the whole team that they are actively reviewing it. If another mod opens the same post, ModBridge immediately surfaces a conflict warning showing who already has it and how long ago they claimed it. The mod can then back off or override, depending on the situation. When the review is done, the claim is released — creating a clean open and close loop for every piece of content in the queue.

Beyond presence, mods can leave internal sticky notes on any post. Notes are visible only to the mod team, permanently stored, and attributed with the author's name and a timestamp. This gives any mod who picks up a post later the full context — ban history, prior warnings, escalation notes — without needing to ask around.

The Activity Feed shows a live log of the last 20 mod actions across the subreddit so any mod can open it and immediately understand what the team has been doing. The Workload Dashboard goes one level further, showing every active mod, how many posts they currently have claimed, and when they were last seen — giving team leads a live snapshot of who is carrying load without any manual check-ins.

How we built it

ModBridge is built entirely on the Devvit platform using TypeScript. We used Devvit Realtime for the live presence and conflict detection layer, and Redis for persistent shared state — claim records, sticky notes, the activity feed, and the workload index all live in Redis scoped per subreddit.

We split the work cleanly between the two of us. One teammate focused entirely on building and testing the app. The other handled research, documentation, and the submission. That division meant neither side was blocked waiting on the other.

Challenges we ran into

Conflict detection turned out to be harder than it looked. Getting the timing right so that a genuine collision triggers a warning without false positives from mods who simply browse a post without acting, required careful thought around claim state and timing logic. Redis key schema design also mattered a lot more than we expected early on. A messy schema would have caused subtle bugs that would have been very hard to trace later.

We also had to make a mid-build decision to drop a feature that wasn't working reliably. It was the right call. A polished three-feature app is worth more than a four-feature app with one broken piece. But it meant rethinking parts of the documentation while the build was still in progress.

Accomplishments that we're proud of

Smart conflict detection is the one we're most proud of. It is genuinely useful, it is not something Reddit offers natively, and it works cleanly. The moment two mods open the same post and one of them sees the warning with their colleague's name on it, that is the core problem ModBridge was built to solve, and seeing it work felt like the right payoff.

We're also proud of how self-contained the app is. No external services, no API keys, no setup beyond installation. A mod team can have it running in under a minute.

What we learned

Real-time shared state is harder to get right than it looks, especially when multiple users are writing to the same records at the same time. We also learned that cutting a feature cleanly is better than shipping something half-baked. The app is stronger for that decision.

What's next for ModBridge

  • Manual recategorisation of modmail threads from the triage dashboard
  • Custom note templates for common mod scenarios like ban reasoning and escalation flags
  • Integration with Reddit Toolbox usernotes for richer user-level context inside the mod queue
  • Per-mod notification settings so mods can choose when to be alerted about conflicts or team activity

Built With

Share this project:

Updates