A score keeper and rule book for my family's rendition of the classic 5 die game.
This game goes by name names (Farkle, Greed, Hot Dice, Zonk, Zilch, Dice 10k, 5-Dice, just to name a few). Each of these permutations of the game follow a similar rule set but no two are the same. In my house it was just called "Dice" and as such, the repo is just as creatively named!
- ✅ Automatic Score Keeping - Input the score earned on each turn, and let the app handle the rest.
- ✅ Turn Tracker - Clear indicator of whose turn it is.
- ✅ Unique Player Icon Colors - Give each player a different colored icon to more easily identify.
- ✅ Rule Handbook - Quick reference to use when teaching new players about the game.
- Game Session Caching - Pick up where you left off either through browser local storage.
- Post Game Analytics - Interesting stats about the game after the game has concluded.
- Configurable Rule Sets - Allow users to create their own rule sets and save them for later use.
I wanted to try my hand at making a game runner that would be intuitive enough to use with little to no instruction, but feature rich enough to allow users familiar with the UI to quickly do all the sorts of things that they would expect a runner like this to be capable of.
From a software engineering perspective, this project has served as a proving ground for all sorts of new techniques and technologies that I have been wanting to try out. You'll find some clean code in this repo that I'm happy with, but right alongside it you might also find remnants of a failed experiment or some practices that aren't considered paradigmatic. There exist a few design decisions that I'm still on the fence about or have marked for re-writes. All in due time!