Chess is a classic game that appears very complicated at first but can be broken down into logical steps that make it a great Ruby capstone project. If you’ve never played, be sure to read up on the rules (see the Wikipedia Page) first.
The problem specification is deliberately sparse for this, your final project of Ruby – it’s up to you to attack the problem with very little prior information or structure, which is good practice for real world programming challenges. You have all the tools you need. You already did a lot of the heavy thinking in the Knight’s Travails project.
The main difference is that this problem has the broadest scope of anything you’ve done yet. The keys here will be thinking it through logically ahead of time and maintaining a disciplined workflow. It’ll be much easier on you if you’re able to stay organized and break it down into components that you can tackle one by one.
This is a great project to have as a part of your portfolio going forward because it shows you can take on something with a lot of different components to it.
This section contains helpful links to other content. It isn’t required, so consider it supplemental for if you need to dive deeper into something.