- Build a command line Chess game where two players can play against each other.
- The game should be properly constrained – it should prevent players from making illegal moves and declare check or check mate in the correct situations.
- Make it so you can save the board at any time
- Write tests for the important parts. You don’t need to TDD it (unless you want to), but be sure to use RSpec tests for anything that you find yourself typing into the command line repeatedly.
- Do your best to keep your classes modular and clean and your methods doing only one thing each.
- Game functional
- Refactor code to reduce complexities