Inspiration

We wanted to help Redditors build better habits while staying engaged with their favorite communities. Many people struggle with consistency - whether it's learning, creating content, or being helpful. We thought: what if Reddit itself could be the platform for personal growth? By gamifying daily engagement through quests and streaks, we turn browsing into purposeful habit-building.

What it does

Streak Forge transforms Reddit into a habit-building game. Each day, users receive 5 personalized quests across their favorite subreddits:

  • Scholar quests: Read and learn from quality posts
  • Community quests: Leave thoughtful comments and help others
  • Creator quests: Share original content Complete quests to heat up your forge (0-100°), earn XP across three skill trees, and unlock badges for milestones like 7-day streaks, 30-day streaks, and exploring 25+ subreddits. Miss a day and your forge cools down, creating healthy urgency without pressure.

How we built it

  • Frontend: React 19 with Tailwind CSS 4 for a sleek, dark forge-themed UI
  • Backend: Devvit Web platform with Hono server and tRPC v11 for end-to-end type safety
  • Data: Redis for fast user progress, quest tracking, and badge storage
  • Architecture: Two-view system (inline splash + expanded game view) for seamless Reddit integration

We structured the code with modular server-side functions for quests, progress tracking, and badge awards, all connected through type-safe tRPC procedures.

Challenges we ran into

  • Designing a quest system that feels rewarding without being overwhelming (settled on 5 daily quests)
  • Balancing the forge temperature mechanic to encourage consistency without punishing users too harshly
  • Creating a dark, immersive UI that still feels native to Reddit
  • Managing TypeScript types across the tRPC boundary between client and server
  • Implementing the badge detection system to check multiple conditions efficiently

Accomplishments that we're proud of

  • Built a fully functional habit-tracking system with real-time progress updates
  • Created an engaging visual design with animated forge temperature bars and glowing effects
  • Implemented three distinct skill trees with meaningful progression
  • Designed 10 unique badges with clear unlock conditions
  • Achieved complete type safety from frontend to backend with zero type casting
  • Made the entire experience feel like a game while keeping it practical for daily use

What we learned

  • How to structure a Devvit Web app with proper separation between client and server
  • The power of tRPC for building type-safe APIs without manual type definitions
  • Redis patterns for storing complex user data structures
  • React hooks patterns for managing async data fetching in Devvit
  • The importance of visual feedback (animations, colors) in gamification
  • How to balance game mechanics to drive engagement without creating addiction

What's next for Streak Forge

  • Personalized quests based on user's subscribed subreddits and interests
  • Social features: Friend leaderboards and community challenges
  • More badges: 20+ additional achievements for specific milestones
  • Quest variety: Weekly challenges, special events, and seasonal quests
  • Rewards integration: Unlock custom Reddit themes or profile badges
  • Analytics dashboard: Visualize your growth over time with charts
  • Streak recovery: Allow users to "repair" their forge once per month if they miss a day

Built With

Share this project:

Updates