Skip to content

Omikrone/Chessgame

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chess Game - Simple Chess Game

Introduction

This project is a straightforward chess game built with C++. It features a C++ backend server and a web-based frontend developed using Vite.

  • Current version: 1.3.0

Features

This chess game includes the following features:

  • Session management for handling multiple games.
  • Compatible with standard chess rules.
  • Communication between server and web interface using WebSockets.
  • Compatibility with UCI protocol (via an http wrapper) for chess engines.
  • Play chess against Euphron, a chess engine developed in C++ !

Installation

This project is compatible with Windows and Linux, and requires CMake for building.

Prerequisites

Make sure you have the following dependencies installed:

Moreover, this project uses Crow for handling HTTP requests and WebSockets. You can install Crow by following the instructions on its GitHub repository.

Building the Project

  1. Clone the repository:
    git clone https://github.com/Omikrone/Chessgame.git
    cd Chessgame

This project is meant to be used with the Chessboard library for the chess rules and logic. To install it, follow these steps:

    cd backend
    git clone https://github.com/Omikrone/Chessboard.git chess
  1. Build the C++ server using CMake:
    cmake -S . -B build
    cd build && cmake --build . --config Release
  1. Build the frontend using npm:
    cd ../frontend
    npm install

Running the Project

  1. Start the C++ server:
    cd backend/build
    ./game/Release/chessgame.exe
  1. Start the frontend:
    cd ../frontend
    npm run dev
  1. Open your web browser and navigate to http://localhost:5173 to access the chess game interface.

Future Improvements

Future improvements for this project may include:

  • Adding compatibility with the Chessboard library for chess rules and logic.
  • Better Handling of the game session and player management.
  • Implementing a multiplayer mode over the network.
  • Enhancing the user interface with more features and better design.

About

A lightweight C++ chess engine with a React frontend, supporting real-time gameplay and AI opponents.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published