Skip to content

Releases: MichaelMrt/ChessPHP

v1.0.1

03 Feb 13:49
c1e8542

Choose a tag to compare

Enhancements

  • added a footer with github contribution link
  • made the page responsive -> Smartphone support

Fixes

  • moved session_start() to chessgame.php -> fix: logic was not stored in session
  • fixed bishop not able to take pieces anymore after making a mistake when refactoring legal bishop move logic
  • fixed mistake when castling long as black: Rook was moved on the wrong square on the server side

v.1.0.0

01 Feb 22:35
f709054

Choose a tag to compare

Merge pull request #106 from MichaelMrt/dev

REWORK: Update Main

v0.0.1-pre-rework

21 Sep 13:01
fe151e4

Choose a tag to compare

v0.0.1-pre-rework Pre-release
Pre-release

Unfinished Project

What was left to do

  • Left side castling for white
  • Right side castling for black
  • leftside castling for black
  • En passant

Why do I rework the project completly?

You can move pieces and get into check or get checkmated and end the game, but I was very unhappy with the UI experience.
I have started the project with the intention to implement Chess using PHP only. But without the use of Javascript I used html submits and exchange the whole board between the client and user. This causes the page to refresh everytime you submit the move. Sometimes the screen flashes from the reload. I was unhappy with the messy foundation of the code which I developed everything further upon.

While reading the book Clean Codefrom Robert C. Martin I noticed a lot of mistakes and in the end decided to rework the whole project for better readability and UI.

The next release will be implemented with Javascript using AJAX Requests to send data to the server in the background without reloading the page and updating the board dynamically. Maybe I'll even switch to Websockets in the future for a smoother experience.

image