Skip to content

maj0ran/chess-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

109 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chess-Server (+ Bevy Client)

My personal 'everyone needs to write a chess program in his life' attempt.

A chess program as a client-server architecture. The server is responsible for all the chess logic while clients can send commands to create, join and play chess games.

Could evolve in either a small-sized online chess or a chess analysis software if I will ever care enough.

menu server

Done:

  • Client-Server Architecture:

    • Basic Management for multiple games and clients
    • Protocol for communicating online-chess-related messages (hosting games, making moves, ...)
  • All mandatory rules for a chessgame:

    • All Piece logic
    • Checkmate and Stalemate detection
    • 50-Moves-Rule
    • Threefold-Repetition
  • Basic GUI Client:

    • Create, Join and List Games
    • Move Pieces, Promote
    • Response to opponent moves, game over, etc.
  • SAN converter

  • Nicknames

  • Move history

Short/Mid-Term TODO:

  • Better Client with better GUI

  • Insufficient Material Draw

  • Offer Draw

  • Resigning

  • Time control management

  • Material overview

Long-Term TODO:

  • Persistent Accounts

  • Puzzles

  • Analysis

  • UCI Bridge (Stockfish integration)

About

chess server written in rust

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors