The ChesslaBlab website allows to play chess online outside the umbrella of mainstream platforms like Lichess or Chess.com. This means that it enables to play chess online without being tracked.
Manifesto:
- Anyone, regardless of age, race, gender or social background should have access to easy-to-use, safe and decentralized chess sites and be able to choose which one to use.
- Chess is a sport, a science, and an art.
- Players should have more control over their own online activity.
- Chess can help you improve your cognitive abilities which is a good think.
- Anyone can learn to think more scientifically.
Chess developers and business owners can now run their own open-source based platform more easily than ever before because the ChesslaBlab website is super-duper simple to install and set up. To give you an idea of its simplicity, the assets/js folder contains less than 3,000 lines of JavaScript code.
cloc assets/js
80 text files.
80 unique files.
0 files ignored.
github.com/AlDanial/cloc v 1.90 T=0.05 s (1474.8 files/s, 59028.2 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
JavaScript 80 311 33 2858
-------------------------------------------------------------------------------
SUM: 80 311 33 2858
-------------------------------------------------------------------------------
This is made possible with object-oriented programming (OOP) using JavaScript modules. Say goodbye to JavaScript fatigue! Get rid of libraries and frameworks like React, Vue or Next.js as well as transpilers and bundlers. The ChesslaBlab website is written using OOP and the DOM.
The following repositories are required to run an online chess platform with ChesslaBlab:
It is recommended to run the online chess platform using four different servers, one per repository, although everything can be run on the same machine in the development environment. The present README file contains an overview for seasoned developers on how to install and setup a ChesslaBlab website.
More detailed documentation will be available soon.
Stay tuned!
Clone the chesslablab/website
repo into your projects folder. Then cd
the website
directory and install the Composer dependencies:
composer install
Set up the browser environment variables:
cp assets/env.example.js assets/env.js
Clear the cache:
php bin/console cache:clear
Download the assets:
php bin/console importmap:install
Compile the assets:
php bin/console asset-map:compile
Set up file permissions for the var/cache
folder:
sudo chmod 775 -R var/cache
sudo chown $USER:www-data -R var/cache
Set up file permissions for the var/log
folder:
sudo chmod 775 -R var/cache
sudo chown $USER:www-data -R var/log
First things first, make sure to have created the fullchain.pem
and privkey.pem
files into the docker/nginx/ssl
folder. Then run the MPA:
Run the app on port 9443
.
docker compose -f docker-compose.dev.yml up -d
Run the app on port 443
.
docker compose -f docker-compose.prod.yml up -d
The MIT License.
We encourage you to contribute to the ChesslaBlab website! Please follow the Contributing Guidelines.
Made with contrib.rocks.