A free-to-play, multiplayer blackjack game designed for fun, accessibility, and an engaging online experience for players of all ages. Enjoy blackjack without the gambling aspects, play casually with friends, and customize your experience.
-
Player Accounts
- Create accounts with a unique username and password.
- Guest mode for quick and easy play (no account needed).
- Manage profiles with stats and settings.
- Win/loss stats displayed in-game and on profiles.
- Customizable profile pictures based on user's skill.
-
Gameplay Mechanics
- Multiplayer lobbies with customizable rules.
- Hosts can adjust:
- Minimum/maximum bets.
- Player count.
- Turn timer limits.
- Starting cash for each player.
-
Dynamic Game Interface
- Display player names and active turns.
- Real-time updates for game progress.
- In-game chat box for lobby communication.
- Role: Play and enjoy blackjack.
- Tasks:
- Create/manage accounts or play as a guest.
- View personal stats.
- Join game lobbies and compete against others.
- Role: Manage game lobbies and player experience.
- Tasks:
- Create lobbies with customizable game rules.
- Manage player lists and remove disruptive players.
- Role: Maintain and improve the game.
- Tasks:
- Monitor lobbies.
- Resolve user issues.
Important
.env
files are included in the database setup for simplicity, as this project runs locally.
In the backend, add the following to a .env
file:
DB_HOST=<your-db-host>
MYSQL_ROOT_PASSWORD=<your-root-password>
MYSQL_DATABASE=<your-database-name>
JWT_SECRET=<your-jwt-secret>
The project is Dockerized.
docker-compose down && docker-compose up --build
To connect to the database:
docker exec -it finalproject-database-1 mysql -u root -p
The password is found in the database .env
.
- Matteo Cusanelli
- Jasmit Saroya
- Manjot Singh
- Brandon Smith