This project is for the "DX and Clean Code: Enhancing Developer Experience through Quality Code TX00FK85-3001" course.
It's a simple chess game that currently works in the Command Line Interface (CLI). The computer opponent picks a random legal move on its turn. The idea is to make the game online and add a simple web based GUI.
These instructions will help you get a copy of the project up and running on your local machine.
Node.js (v18+): Download here.
Package Manager: pnpm (Recommended). Install via npm install -g pnpm. npm also works fine.
- Clone the repository
- In the terminal, navigate to the project root
- Install dependencies:
pnpm install
ornpm install
- Add a
.env
file intopackages/front/
with
VITE_SERVER_BASE_URL=http://localhost:3000
VITE_WS_BASE_URL=ws://localhost:3000
To start the backend, in the project directory run: pnpm --filter backend dev
To start the frontend, in the project directory run: pnpm --filter front dev
Code style is enforced with eslint and prettier
The project can be linted with pnpm lint
or npm run lint
- chess
- websocket server for online multiplayer
- web GUI (work in progress)
- "FEN" (Forsyth-Edwards Notation) is used in the code to serialize/deserialize chess games.