Inspiration
We wanted to reimagine the classic game of Bingo in a more playful, modern way. Emojis are a universal language across cultures, so replacing numbers with emojis makes the game more expressive, fun, and instantly relatable. The goal was to create something lighthearted that still keeps the excitement of traditional Bingo.
What it does
With Bingoji:
- Enjoy traditional Bingo game with new experience of emojis in a self-paced environment (single-player mode)
- Our players can customize or randomize a 5x5 board with emojis
- A random emoji is called after every 3 seconds
- If a player matches 5 emojis in a row (row, column, or diagonal) during the game duration time (3 minutes), they win!
- A countdown timer adds urgency, and background music that sets the good mood for our beloved players.
How we built it
We built Bingoji using React and JavaScript, keeping the flow simple and state-driven with 4 main screens:
- TitleScreen - Choose Quick Play or Tutorial
- BoardSetup - Players select or randomize emojis for their card
- GamePlay - Emojis are called, the timer counts down, and the system checks for Bingo
- Result - Shows when the game is over
Challenges we ran into
There are some main challenges witnessed during our time building Bingoji:
- Autoplay audio restrictions: Browsers block autoplay unless thereโs user interaction, so we had to combine autoplay attempts with a fallback that plays music when the user first clicks.
2.Board state persistence: At first, the board reset when moving screens. We fixed this by making sure the setup screen passes the finalized board into gameplay without clearing it.
- Overengineering multiplayer: We initially planned multiplayer with a waiting room, but without a real backend it became too complex. We trimmed it down to a polished single-player version first.
Accomplishments that we're proud of
We're simply happy that we've gotten through the tough time building Bingoji under high pressure together as a team!
What we learned
There are some lessons learned and insights gained based on our experience building Bingoji:
Keep scope realistic: Start small, polish a single-player version, then expand later.
Browser quirks: Audio autoplay and localStorage persistence taught us a lot about real-world frontend limitations.
React state flow: Passing data between screens effectively without unnecessary complexity.
What's next for Bingoji
Here are some upcoming plans for our Bingoji:
- Add a real multiplayer mode with a functional database + WebSocket connections
- Polish our current UI
- Add achievements, daily challenges, and streak tracking with prizes (such as background theme customized for our players)
Built With
- css
- devvit
- javascript
- supabase
- typescript
Log in or sign up for Devpost to join the conversation.