The hosted chess server will be added to the application as an opponent player. The user will be the white side, while the server will be the black side. The game logic to be implemented here is very simple. The first move is given to the application user. When the user makes a move, they change the state of the chessboard from state X to state Y. The state of the board is represented by a FEN string. Also, they move a piece from a particular square to a particular square, which contributes to their move. When the user has completed a move, the FEN string for state X and their current move, which is obtained by concatenating the from and to squares, is sent to the server in the form of a POST request. The server, in return, responds with the next move from its side, which is then reflected on the UI.
Let's look...