Inspiration
Whenever people talk about Las Vegas, it’s usually all about the strip, but locals know the real story is messier, funnier, and way more human, meaning it can be boring. I wanted to build something that captures that contrast: what people say happened vs what actually happened. That became Bluff - a social game where your friends post in response to a daily prompt, and everyone bets chips on whether it’s truth or bluff.
What it does
Bluff is a daily social betting game:
- Users get a daily prompt and post one image + captioned claim.
- They secretly mark their post as truth or bluff.
- Friends vote and wager chips on their guess.
- After reveal, Bluff settles results automatically: voters win for correct reads, posters win when their bluff fools people.
- Players can track chip history, profile stats, friend activity, and leaderboard movement over time.
How I built it
- Frontend: TanStack Start + React + Tailwind + shadcn/ui for fast iteration and polished UI.
- Backend: Convex for real-time queries/mutations, schema, and scheduled jobs.
- Auth: Clerk for user accounts and profile management.
- Ops/deploy: Vercel hosting with Convex cron jobs handling daily round creation and periodic reveal settlement.
Challenges I ran into
- The UI was a large challenge because I wanted to make sure that Bluff had a soul and identity.
- Balancing game fairness and simplicity.
- Designing time-based game phases without confusing users (posting window, voting window, reveal timing). Working with datetimes in any setting is annoying, let alone a 24 hour hack-a-thon.
- Building feed pagination + friends filtering without slowing down UX.
Accomplishments that I'm proud of
- A complete end-to-end gameplay loop, not just a UI concept.
- Real chip economy with auditable transaction history and clear outcomes.
- Working social features (friends, profile, comments/reactions) that make repeated play feel natural.
- A Vegas-themed product identity that feels distinct from typical “daily post” apps.
What I learned
- Time-based products are mostly systems design problems disguised as UI.
- Convex makes real-time gameplay loops much easier when schema + mutations are modeled cleanly.
- Clear constraints (one post/day, one vote/post, chip increments) improve both UX and game integrity.
What's next for Bluff
- Add all-in and advanced betting mechanics for bigger risk/reward moments.
- Introduce group-level “tables” and private circle competitions.
- Add anti-cheat and moderation upgrades (reporting quality, abuse detection).
- Improve ranking with seasonal ladders, badges, and progression milestones.
- Ship push notifications for challenge open, voting reminders, and reveal results.
Built With
- convex
- react
- tanstack
- typescript
Log in or sign up for Devpost to join the conversation.