Inspiration
Reddit has over 100,000 active communities, but most moderators are volunteers who are burnt out, understaffed, and spending all their time reacting to bad behavior. There's no built-in way to measure community health, reward positive contributors, or share what makes a subreddit great with the outside world. CommUnity was built to change that shifting moderation from purely reactive to genuinely proactive.
What it does
CommUnity is an all-in-one community health tool for Reddit moderators. It does five things:
- Auto-detects and removes toxic comments the moment they're posted, replies with a public removal reason, and logs a Spam Warning mod note on the user's profile — all without any mod intervention.
- Commend This Post — a one-click mod action that publicly recognizes positive contributions with an automatic bot comment, stored in Redis with duplicate prevention.
- CommUnity Dashboard — a real-time health overview showing Community Health Score, posts this week, removal rate, new members, and commended posts.
- Weekly Report — auto-generates and posts a full community health report to the subreddit every week.
- Community Highlights — generates a shareable post featuring the most liked post, most discussed post, top commended post, and dynamic achievements. Designed to be shared on Twitter/X, TikTok, and Instagram to drive traffic back to Reddit.
## How we built it
Built entirely on the Devvit web framework using TypeScript and Hono for routing. Redis handles all persistent storage; metrics, commendation history, and weekly counters. The app uses four core Devvit primitives: menu items for mod actions, triggers for real-time comment scanning, forms for the dashboard UI, and the Reddit API for post submission and comment creation.
## Challenges we ran into
The biggest challenge was figuring out the exact shape of Devvit's trigger payloads, the field names in the comment submit trigger weren't what the TypeScript types suggested. We had to add debug logging to inspect the raw JSON and discover that author name lived at
input.author.nameand subreddit name atinput.subreddit.namerather than on the comment object itself. We also hit a self-triggering loop where the bot's own removal reason comments were being scanned for toxicity fixed with an author name check at the top of the handler. The Devvit Listing type also doesn't support.reduce()directly, requiring an async iteration pattern to convert it to a plain array first. ## Accomplishments that we're proud of The end-to-end toxicity pipeline working in real time was the biggest win; a toxic comment posted, removed, replied to, and mod-noted within seconds with zero human involvement. The Community Highlights feature was also a proud moment; the idea that a Reddit mod tool could actively help grow a community's presence on other social platforms feels genuinely new. Building the entire app from scratch in under a week as a solo developer is something worth celebrating too. ## What we learned Devvit's trigger system is powerful but the payload shapes require hands-on exploration; the TypeScript types are a starting point, not the full picture. Redis as a lightweight backend works surprisingly well for community metrics. And perhaps most importantly: the best mod tools don't just punish bad behavior, they create systems that reward good behavior and make communities worth joining. ## What's next for CommUnity AI-powered toxicity detection replacing the keyword list for more nuanced, context-aware moderation - Strike tracking — automatic escalation for repeat offenders (warning → mute → ban recommendation)
- Member leaderboard recognizing top contributors publicly each week
- Cross-subreddit health benchmarking so mods can see how their community compares
- Scheduled auto-highlights so the social sharing happens automatically without any mod action
Built With
- devvit
- hono
- redis
- typescript
Log in or sign up for Devpost to join the conversation.