freechess
freechess copied to clipboard
WintrCat's Game Report ♟️
WintrCat's Game Report
Generate classifications for your Chess moves, for free. Available @ chess.wintrcat.uk
Enter a game by its PGN or pick a game from your Chess.com / Lichess.org account and have it analysed so that you can see where your mistakes and brilliancies are.
Running locally
Prerequisites
- Node.js 20.x runtime or later.
- TypeScript package installed globally.
Starting application
- Download the source code using
git clone
or download as ZIP. - Open the root directory of the project in a terminal.
- Run
npm i
to install all of the necessary dependencies. - Create a file called
.env
in the root directory of the project. - Choose a port for the webserver by adding
PORT=<some port>
to the file. - If you want to use a CAPTCHA:
- Add your client secret as
RECAPTCHA_SECRET=<secret>
to the .env file - Open
src/public/pages/report/index.html
, finddata-sitekey
and replace the value with your reCAPTCHA public site key
- Add your client secret as
- Run
npm start
to compile TypeScript and start the webserver.
NPM Scripts
-
npm start
- Compiles TypeScript and starts the webserver. -
npm run build
- Compiles TypeScript. -
npm run test
- Generates reports from some sample evaluations for classification testing atsrc/test/reports
.
Running in Docker
Prerequisites
- Docker installed on the server
Build a Docker image
- Download the source code using
git clone
or download as ZIP. - Open the root directory of the project in a terminal.
- Create a file called
.env
in the root directory of the project. - If you want to use a CAPTCHA:
- Add your client secret as
RECAPTCHA_SECRET=<secret>
to the .env file - Open
src/public/pages/report/index.html
, finddata-sitekey
and replace the value with your reCAPTCHA public site key
- Add your client secret as
- Run
sudo docker build . -t freechess
to build the image
Start a Docker container with the freechess image
- Run
sudo docker run -d -P freechess
- If you wish to choose the port instead of Docker choosing one for you, replace
-P
with-p <port>:80
Attributions
@shirsakm - Classification icons
Donate
I pay to keep my app running and free-to-use for everyone. Any donations are greatly appreciated ❤️
Join the community
If you've found a bug in the website, have some cool suggestions or just want to have a chat, you can join my Discord!