Welcome to BitBingo, a custom bingo game designed for playing bingo with your best mates at work, home, or anywhere you find yourself considering the crazy things that happen to you.
BitBingo uses the following things under/around/and over the hood:
- Python 3.13
- FastAPI (SSR, Functions)
- Jinja Templating (HTML/CSS)
- DuckDB (persistent binary database)
- System.css (Old apple component styling library)
- 3x3 or 4x4 bingo games
- Ability to add custom prompts
- Invites friends with invite links
- Points for winning games, and a leaderboard to see the scores
- A stats screen for bingo game history and player detail lookup
- Time tracking on bingo games
- A hidden minigame
- Public voting on new prompts
- Someone would submit a prompt and each user would get a single vote for either Yay or Nay. If it's majority Yay the prompt gets auto accepted into the list.
- Show the winning combination when someone wins bingo
- Add a favicon
- Modify the title of the page to include what page you're on. I.e. BitBingo | Stats
- Some security fixes... I won't spoil what those are
- Add the password hashing salt to a const and is defined somewhere useful
To run a version of BitBingo locally, you'll need to follow these steps:
- Clone the repository to a folder of your choosing
- Create a virtual environment and install the requirements
- Create
static/prompts.jsonfromstatic/prompts-example.jsonwith your chosen starting prompts. You may also do this in the app one by one - Run the app initially:
python main.py - Login with username
adminand passwordadmin - You can change your password from the Profile screen