Create a Black Jack game. This application should allow the user to play against the dealer. Player is alone against the dealer
- Create a deck of 3 packs of cards (52x3), containing the data for each card, and providing a way of drawing a card at random from the deck.
- Draw cards to players until player wants to stop
- Draw cards for Dealer until hand is bigger than player or more than 21
- Calculate the score for a given hand.
- Keep track of the state of the current round and game and showing the appropriate elements on the screen, based on the context.
Please note that we are not necessarily expecting you to build all requirements. Build as much as you can. We are not expecting you to build the full game with no mistakes on the rules. We allow rules to be broken if you are not able to build it in a decent amount of time. (Ace management can be tricky).
- Animations
- State management (redux, mobs…)
- Type checking (Typescript, proTypes…)
- Responsiveness
- Instructions on starting your application
- Use git
- Test cases (at least unit tests for major functions)
- Browser compatibility: Latest 2 versions Chrome, Firefox and Safari / iOS and Android
- Instructions on creating a production build
If you submit as a public git repository:
Avoid words like “Blue Ivory Group” and “challenge” in your repository.
Do not copy any part of this file or any part of the Mock API.
Alternatively, you may also send us a ZIP archive file containing your solution. For fairness’ sake, you must also use Git and include the .git
directory in the archive if you submit a ZIP archive file.
If you are so inclined, you can deploy the application onto a remote server (e.g. heroku) in addition to sending us your Git repository.
React or React Native, We judge your submission on engineering practices (over-engineering will be penalized).
You can work on your own schedule, but a complete solution is expected within seven days.
See
Submission
.