A simple tic-tac-toe application with a clean UI and simple, intuiative, and effective controls.
The application renders a start screen to begin, clicking start brings you the player name input screen. Upon name selection, you are taken to the main game where a player will be chosen at random to start. Play goes to either a tie or a win. At any point you can restart the game, which will again choose a random player to go first. At any point you may also go back to re-enter names.
This application was made to practice object/logic seperation by using factory functions, the module pattern, as well as ES6 modules implementing using npm. My attempt going into this project was to create an application that not only looks good but whose code works in logical/modular patterns. I designed this project to be easily expandable in the future. A secondary goal was to create a reactive application that looked great. From the start screen through to the main game I wanted to make something that was easy to look at as well as navigate.
Project Start: 12/25/2020. Starting on paper, seperating out objects and modules into logical segments (player, game, gameBoard, displayController). I made sure that smaller helper functions would be tested as I wrote them. Learning a bit about css animations before getting onto a keyboard.
Project End: 12/29/2020. I am fairly proud of my final (for now) application! I was able to learn a great deal about css transitions/animations to be able to make the application look great and distribute the logic around to modular segments that I was able to move around easily and am even thinking of using in the future. I plan to expand on this application in the future and add more features.
Future Notes: Firebase implementation for persistant data, AI Features.