Inspiration
Every day, millions of Redditors think alike without knowing it. I wanted to turn that invisible consensus into a game. Family Feud proved that "guess what people said" is endlessly entertaining -- but what if Reddit IS the survey, live, every single day?
That's HIVEMIND: a 60-second daily ritual that turns the hivemind into a scoreboard.
What it does
HIVEMIND shows all players the same daily prompt and asks for one answer. After submitting, players tap through 8 panels in a dramatic bottom-to-top reveal to discover what everyone else said -- complete with escalating sound effects and haptic feedback. If your answer matches the crowd, you score high (up to 100 points). If not, you land in the Outlier Gallery where the community votes on the funniest unique answers.
The game features a deep streak system with 9 evolving flame stages (Spark through Transcendent), streak shields, Phoenix Recovery for missed days, and streak powers that unlock at milestones. Special modes like Speed Meld Friday (5 rapid-fire rounds) and Contrarian Saturday (where being unique scores highest) keep things fresh. Players can also submit and vote on prompts, creating an infinite content flywheel.
How I built it
I built HIVEMIND using Reddit's Devvit platform with a two-runtime architecture:
- Server side (src/): TypeScript running in Devvit workers, handling all game logic, scoring, and Redis operations
- Client side (game/): React 19 webview with Vite 6, TailwindCSS 4, and Motion 12 for spring physics animations
All data lives in Devvit Redis using sorted sets for answer rankings, hashes for user state, and atomic counters for real-time player counts. The tap-to-reveal uses CSS 3D transforms for GPU-accelerated panel flips, Web Audio API for synthesized sound effects (no external audio files), and the Vibration API for haptic feedback on mobile.
Communication between server and client uses a typed postMessage protocol with TypeScript discriminated unions, ensuring type safety across the iframe bridge.
Challenges I ran into
- Devvit Redis limitations: Devvit Redis has no Set operations (sAdd/sIsMember), so I used hash maps as set replacements and designed around the available primitives
- Two-runtime JSX conflict: The server uses Devvit.createElement while the client uses React's JSX -- required separate TypeScript configs to avoid factory collisions
- Answer matching at scale: Simple string equality fails when "book" should match "textbook" -- I built a multi-layer matching system with synonym mapping, Levenshtein distance for typos, suffix/prefix matching for compound words, and smart depluralization
- Streak idempotency: Preventing double streak increments when users refresh required careful atomic check-and-set patterns in Redis
Accomplishments that I'm proud of
- 41 features implemented across 35 source files, all working together
- The tap-to-reveal sequence genuinely feels exciting -- the rhythm accelerates, sounds build, and there's a dramatic pause before #1
- Smart answer matching that handles real-world input gracefully
- A streak system deep enough to keep daily players engaged for months (9 flame stages up to Day 365)
- The Outlier Gallery creates a natural viral content engine -- weird answers are inherently shareable
What I learned
- Devvit's webview architecture is powerful but requires careful attention to the server/client boundary
- Redis sorted sets are perfect for ranking-style games -- the convergence mechanic maps naturally to zIncrBy/zRange
- Spring physics animations (via Motion library) make UI interactions feel alive compared to linear easing
- Daily games succeed when they respect the player's time -- under 60 seconds to play, but social features extend engagement organically
How to Test
- Visit the test post: https://www.reddit.com/r/the_converge_dev/comments/1r2zpwi/can_you_think_like_everyone_else_play_todays/
- Click "Play HIVEMIND" to launch the game
- You'll see today's prompt: "Name something you'd find in a college dorm room"
- Type your answer (try "bed", "laptop", "book", or anything you think others would say)
- After submitting, tap each panel from #8 up to #1 to reveal what everyone said
- Hold down to speed up the reveal (2× speed)
- Or wait 2 seconds for auto-advance
- Hold down to speed up the reveal (2× speed)
- See your score — did you match the hivemind?
- Browse the Outlier Gallery to see the funniest unique answers
What's next for HIVEMIND
- Subreddit-specific prompts: Let communities run HIVEMIND with prompts tailored to their niche (r/gaming, r/cooking, etc.)
- Monthly Grand Meld events: Community-wide challenges with leaderboards
- Prompt categories: Tag prompts so players can filter by topic
- Achievement system: Badges for reaching flame stages, getting #1 answers, and creative outliers
- Accessibility improvements: Screen reader support, reduced motion mode, and keyboard navigation
Built With
- 3d
- css
- motion
- react
- reddit-devvit
- redis
- tailwindcss
- typescript
- vite
- web-audio-api
Log in or sign up for Devpost to join the conversation.