Inspiration Flairs on Reddit are small badges that add personality to posts and comments. We wanted to turn them into a daily game where anyone can propose their own flair, vote for their favorite, and see the winner applied to the subreddit the next day. The idea came from a desire to:

Boost community engagement through a simple, repeatable mechanic.

Use Reddit‑native tools (flairs, polls, upvotes).

Give users a sense of influence over the look and feel of their subreddit.

What we learned How to work with Devvit Web and the Reddit API to build interactive games.

How to design UGC mechanics with safe moderation (regex filters, input limits).

How to optimize KVStore usage to avoid exceeding limits and ensure stability.

How to set up scheduler jobs for reliable daily cycles.

How we built it Frontend: React‑based Devvit Web template for the flair submission form, daily theme display, and leaderboard.

Backend logic: TypeScript code using Devvit API:

KVStore to store proposals and results.

scheduleJob to start a new cycle every day.

createPoll for voting.

setSubredditUserFlairTemplate to automatically apply the winning flair.

Moderation: App rules with keyword filtering, length limits, and submission caps.

Testing: A test subreddit with fewer than 200 members, simulating 10–20 interactions per day.

Challenges Mod permissions: Without moderator rights, the flair API doesn’t work — we had to configure access via dr-admin-approve.

Rate limits: During heavy submission periods, we added delays to avoid exceeding Reddit API limits.

UGC moderation: Balancing creative freedom with content safety.

Scheduler reliability: Added a fallback check to ensure the cycle isn’t skipped if the cron job fails.

Built With

  • built-with-languages:-typescript-frameworks-&-libraries:-react
  • comments)-storage:-devvit-kvstore-tools-&-services:-devvit-scheduler-jobs
  • devvit-web-ui-components-platforms:-reddit-developer-platform-(devvit)-apis:-reddit-api-(flairs
  • polls
  • posts
Share this project:

Updates