Skip to content

Checkers#

Info

Also known as draughts, is a group of strategy board games for two players which involve forward movements of uniform game pieces and mandatory captures by jumping over opponent pieces. 1

Introduction#

It has been almost a year since I first had a heavy logic on building the Battleship Node.js application (web). People enjoyed it and someone amusingly told me that there will be a different whole new game next time.

At this point of time, I am now more knowledgeable about Angular and Nest.js with socket.io integration.

Now, I plan to make Checkers board game... and later on, integrate it with Authentication or a user login feature.

Checkers

Website#

Features#

  • Chat
  • 8x8 board size
  • 10x10 board size
  • Time control
  • Easy computer opponent
  • Draft board mode
  • Game audio
  • Spectating
  • Login required
  • Leaderboard

Players can send invite via selecting a board size and time control to start playing with others online.

Aside from live games, people can:

  • Play with the computer (easy-level)
  • Go draft board mode which is not actually a proper game but good for demonstrating the game, or explaining a strategy.

Draft board mode#

This is enabled by default after you login into the game, and you'll see the board already setup, with the checkbox with the computer opponent.

You can press the board to place and remove common pieces or special pieces (crown symbol). There is also a Clear button to clean the board without any pieces. So when you want, for an instance, demonstrate the game mechanics and strategies, then this is a nice feature to have 🙂

Quote

How to play can be found on the website itself. See Website

Conclusion#

Developing this project helped me learned more about integrating Authentication features with between Angular and Nest.js.

This is also the first project where I slowly started to write reusable components, in this case, the Socket and Sound services, and the Chat component/services so that if I were to build future projects with the same framework, then I could do it quickly and integrate more easily.


  1. From Wikipedia - https://en.wikipedia.org/wiki/Checkers 

Comments