Skip to the content.

CPT Individual Final Review • 7 min read

Project Overview

The project my group decided to create was a casino simulator for users to experience gambling without losing actual money. We rigged all of our functions so that the user will lose far more often than win in order to emphasize the lesson that gambling is not a good choice to make, hopefully discouraging users from actually gambling in real-life casinos.

My Contributions

In this project, my role was to be a frontend developer. I made most of the frontend functions, including the race better, slot machine, and blackjack, and incorporated various animations and designs to make the user experience more engaging and interactive. I also helped with the organization of the website, creatng the casino room where all the functions could be visited after login, and many of the backgrounds were generated by me using AI art generators

Key Commits

  • Race Better: Created a race betting game where the user places a wager on either the red or blue car. Game logic spins to decide whether the user wins or loses, (70% chance loss) and balance is accordingly updated.

  • Slot Machine: Used CSS to create container and reels holding the slot machine sprites in a 3x3 container. Each reel from left to right is span 5 times to create the animation of spinning while the sound plays in background.

  • Blackjack: Javascript logic to recreate the iconic blackjack card game digitally. CSS was used to create the card flipping animation and flashes the user cards red if busts and green if won.

Collegeboard Requirements

College board Our Project
Instructions for input from one of the following: the user, a device, an online data stream, a file. We require JWT tokens and credentials for user login, also user input for wagers and betting decisions.

Get Bet Image
Use of at least one list (or other collection type) to represent a collection of data that is stored and used to manage program complexity and help fulfill the users purpose. SQLite tables and databases to store and manage users and balance.
At least one procedure that contributed to the program’s intended purpose where you have defined: the name, return type, one or more parameters. We have procedures for user authentication and authorization.
An algorithm that includes sequencing, selection, and iteration that is in the body of the selected procedure. Our authentication algorithm includes sequencing, selection, and iteration.
Calls to your student-developed procedure. Our procedures for casino features, animations and balance tracking are called throughout the application.
Handle User Balance Image
Instructions for output (tactile, audible, visual, or ) based on input and program functionality. Login redirects users to casino lobby page, features are managed and played by the user