Smoke or Fire
LiveThe classic drinking card game, playable on any device
Built by Caden Sorenson · Launched March 2025
What is it?
Smoke or Fire is the classic party card game, built for phones and the web. Guess whether the next card is red or black, higher or lower, inside or outside. Four rounds, then a pyramid where everyone’s cards come back to haunt them.
Pass-and-play on a single device, or multiplayer with room codes across separate phones.
Features
- Four-round card guessing game with increasing difficulty
- Pyramid endgame where matched cards assign drinks to other players
- Real-time multiplayer via 4-letter room codes
- Pass-and-play mode for single-device sessions
- 3D card flip animations on every reveal
- Customizable drink amounts per round and pyramid row
Why it’s on the web and not the App Store
Submitted to Apple multiple times. Rejected each time under Guideline 1.4.3 (apps that encourage alcohol consumption). Tried every angle: reframing the metadata, removing all alcohol references, positioning drinks as optional scoring. Didn’t matter. The game mechanic is the game mechanic.
It runs in any browser. No install required.
Tech
React Native + Expo + TypeScript. Firebase Realtime Database for multiplayer sync. react-native-reanimated for the card flip animation. Read the full build log for the whole story, including the multiplayer architecture and the App Store saga. Source on GitHub.
More about Smoke or Fire
- Behind the buildI Built Smoke or Fire: A React Native Card Game (That Apple Won't Let You Have)How a party card game became a React Native + Firebase multiplayer app, the Firebase array normalization problem that almost broke multiplayer, and why the App Store kept saying no.
- From the blogBuilding SumTrails: A Daily Puzzle Game Where the Generator Was the Real PuzzleI built a daily number-path puzzle game because I wanted one to play. Turns out, generating good puzzles is exponentially harder than solving them.
- From the blogI Built a Dead Simple App Because Claude Code Couldn't Hear MeClaude Code on Bedrock doesn't expose a microphone. I type slowly. So I built an iOS app that transcribes speech and drops it straight to the clipboard.