An online multiplayer chess game built with React, Tailwind, TypeScript, Node.js, Express.js, and WebSockets, offering real-time gameplay with seamless connectivity.
chess-game-compressed.mp4
- Play online or invite friends for private matches.
- Real-time gameplay with WebSocket connections.
- Profile Management for user avatars and information.
- Downloadable move history for review.
- Check, checkmate detection.
- Pawn promotion handling.
- Responsive UI for mobile and desktop using Tailwind CSS.
- Frontend: React typescript, WebSockets, Tailwind CSS, React Router
- Backend: Node.js, Express, TypeScript, WebSockets
Follow the instructions below to clone, build, and run the project.
Make sure you have the following installed:
- Node.js (v14 or above)
- npm (Node Package Manager)
-
Clone the Repository
Open a terminal and run the following command to clone the project:git clone https://github.com/Ravi0529/chess.io.git cd chess.io
-
Install Dependencies and Build the Project
In the root folder of the project, run the following command to install dependencies and build:npm run build
The project consists of both a backend and frontend, which need to be started separately.
- Open a terminal in the root folder of the project.
- Run the following command to start the backend:
This will start the backend server and make the API available. Keep this terminal open.
npm run backend
- Open a new terminal in the root folder.
- Run the following command to start the frontend:
This will launch the React application for the frontend.
npm run frontend
Note:
- Both commands (
npm run backend
andnpm run frontend
) must be run in the root folder of the project.- Use separate terminals for running each command.
- Start the backend server first, then start the frontend server in a new terminal.
root
├── backend/ # Backend logic and WebSocket implementation
├── frontend/ # Interactive UI built with React and Tailwind CSS
├── package.json # Project dependencies and scripts
├── README.md # Project documentation
└── ...
We welcome contributions! Feel free to fork the repository and create a pull request.