/Chess

Chess in JavaFX and Maven

Primary LanguageJava

Chess

This is my first big project. I have worked on it alone with almost no help from youtube / other chess tutorials. I learned a lot going thru the project. After many sleepless nights and painful days l was able to complete it! It will certantly not be perfect but this is my first project non the less! There are a few commits because l learned how to push and commit during making the project and l didn't believe l will even complete it.

This project was made with JavaFX and Maven. Javadoc convention used for the comments. Guava library used for the Stopwatch class. Apache Commons IO library used for Serialization file writing.

This project includes the following functionalities:

  1. En passant
  2. Castling
  3. Stalemate
  4. Checkmate
  5. Pawn promotion

Additions to the project:

  1. Load the game from where you have left it (Serialization)

Coming soon:

  1. FEN notation custom boards generator (export a board as FEN)
  2. Clock (custom time modes)
  3. MySQL DB integration (for all users to keep their progres, games, etc...)
  4. Evaluation meter (for which player has a better position / is winning)
  5. Custom boards / pieces
  6. Animations
  7. Panel for latest moves
  8. Rewatch a game (game positions save as FEN in a .txt file)
  9. Multiplayer (with lobby system / code to enter)
  10. Chat
  11. Unit Testing with JUnit
  12. Chess AI (bot for singleplayer)
  13. Spring Framework integration
  14. Export to Android / IOS