https://github.com/ayoubachak/ruchess
https://github.com/ayoubachak/ruchess
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ayoubachak/ruchess
- Owner: ayoubachak
- Created: 2024-05-13T07:53:06.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-25T10:37:08.000Z (6 months ago)
- Last Synced: 2025-03-25T11:32:46.920Z (6 months ago)
- Language: Rust
- Size: 245 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Chess Game
A modern chess application built with React and Tauri, featuring local gameplay, AI opponents, and multiplayer capabilities.
## Features
- **Local Game Mode**: Play chess with a friend on the same device
- **AI Mode** (Desktop version only): Challenge the computer with adjustable difficulty levels
- **Multiplayer Mode**: Play online against other players
- **Session Management**: Create and manage multiple game sessions## Technology Stack
- **Frontend**: React, TypeScript, Vite
- **Backend**: Node.js, Express, Socket.io
- **Desktop Application**: Tauri (Rust)## Prerequisites
- Node.js 16+
- Rust (for desktop version)
- npm or yarn## Installation
1. Clone the repository:
```
git clone https://github.com/yourusername/ruchess.git
cd ruchess
```2. Install frontend dependencies:
```
npm install
```3. Install server dependencies:
```
cd server
npm install
cd ..
```## Running the Application
### Web Version (No AI capabilities)
To run the web version with multiplayer functionality:
```
npm run start-all
```This will start both the React frontend on port 3000 and the multiplayer server on port 3002.
### Desktop Version (Full functionality)
To run the desktop version with AI capabilities:
```
npm run tauri dev
```This will start the Tauri application with the full feature set including AI gameplay.
## Building for Production
### Web Version
```
npm run build
```### Desktop Version
```
npm run tauri build
```This will create executable applications for your operating system in the `src-tauri/target/release` directory.
## Game Modes
### Local Game
Play against another player on the same device, taking turns to make moves.
### AI Game (Desktop only)
Challenge the computer at three difficulty levels:
- **Easy**: Makes random valid moves
- **Medium**: Prioritizes captures and basic tactics
- **Hard**: Uses advanced evaluation and strategy### Multiplayer
Create a new game and share the link with your opponent, or join an existing game with a room ID.
## Development
### Project Structure
- `/src` - React frontend
- `/src/services` - Game services and logic
- `/server` - Multiplayer server
- `/src-tauri` - Rust backend for desktop version## License
MIT
## Credits
Created by [Your Name]