Inspiration
Daily games are sticky on Reddit because they create shared moments. We wanted to bring that same “everyone sees the same puzzle today” energy to markets: quick pattern recognition, one official attempt, and immediate discussion in comments. CandleCrash is inspired by the enthusiasm on the wallstreetbets daily hustle and wanted to give the users something to guess. This game is strictly for entertainment only, not financial advice.
What it does
CandleCrash is a daily stock chart guessing game built for Reddit.
Each day (UTC):
- Players see a 20-candle chart.
- They choose 1 ticker from 4 options.
- They get one official attempt.
- The app reveals the answer and next-day move.
- Players can share their result in comments and compare streaks/leaderboards.
It also includes:
- Daily and all-time leaderboard
- Streak tracking
- Community telemetry (accuracy/completion)
- “Suggest tomorrow’s ticker” community input
- Mod + scheduled refresh flow for daily challenge generation
How we built it
We built CandleCrash as a Devvit Web app with a React client and Hono server routes.
Core architecture:
- Client (React + Tailwind): splash, gameplay screen, chart rendering, result/share flows, compact mobile-first UX
- Server (Hono + Devvit server context + Redis): init/submit/leaderboard/telemetry/suggestions, one-attempt enforcement, streak logic
- Shared types: request/response contracts in TypeScript
- Data pipeline:
- Primary: fresh market-close candles via Yahoo chart API
- Fallback: local curated dataset for reliability
- Scheduler:
- Automatic daily refresh task after market close
- UX polish:
- Game-first wireframe (chart first, choices second, extras collapsed)
- CSS-only motion choreography for tap → reveal
Challenges we ran into
- Balancing “feature complete” with “attention optimized”: too many sections caused scroll fatigue, so we redesigned to progressive disclosure.
- One-attempt/day UX: making repeat visits feel intentional (result-first) instead of confusing.
- Chart framing: avoiding letterboxing and making candles feel immersive on mobile.
- Data freshness vs reliability: live market data can fail, so fallback logic had to be deterministic and safe.
- Motion quality without heavy runtime overhead: we implemented premium-feel transitions with CSS only.
Accomplishments that we're proud of
- Built a true daily Reddit-native game loop with shared challenge state.
- Enforced one official attempt per user/day server-side.
- Added market-close refresh automation (manual + scheduled).
- Shipped polished mobile UX with game-first flow and reduced cognitive load.
- Added social loops: share templates, comments handoff, discussion prompts, and community suggestion mechanics.
- Achieved clean type-check/lint while iterating quickly.
What we learned
- In daily games, layout priority matters more than feature count: chart + choice + reveal must dominate.
- Small motion choreography can dramatically improve perceived quality when timed around decision points.
- Reddit context requires compact UI and strong defaults; secondary features should be collapsed by default.
- Server-authoritative state is essential for fairness and trust in competitive daily formats.
What's next for CandleCrash
- Improve competitive depth:
- better difficulty calibration
- richer leaderboard slices (friends/subreddit cohorts)
- Enhance chart gameplay:
- optional visual reveal for next candle direction
- smarter ticker pool balancing
- Expand social mechanics:
- stronger comment-thread prompts
- weekly recap posts
- Add observability:
- funnel analytics for session drop-offs
- A/B testing of hooks/CTA/reveal styles
- Prepare production hardening:
- stronger API resilience and caching strategy
- moderation/admin controls for challenge operations


Log in or sign up for Devpost to join the conversation.