OpenChessClub is an open-source chess club management platform built with Node.js, Express, MongoDB, and Handlebars. It helps local and online chess clubs manage players, track games, and organize events.
- Manage players with profiles and stats
- Record and track games, results, and ELO changes
- View leaderboards and recent activity
- Search and filter players dynamically
- Simple admin interface for managing users and clubs
git clone https://github.com/openchessclub/openchessclub.git
cd openchessclubnpm iAt the root of this project, you'll find .env.example. Rename it to .env, and set your variables accordingly.
If you don’t already have a MongoDB connection string, you can create a free cluster with MongoDB Atlas. If you choose to quick deploy with the above button, MongoDB will be automatically configured for you, although that does come with a $10/month price.
- Go to https://www.mongodb.com/cloud/atlas
- Create a free account and a new project
- Deploy a Free Tier Cluster (M0)
- Under Database Access, add a new user and password
- Under Network Access, allow your IP (or 0.0.0.0/0 for development)
- Click Connect -> Drivers -> Node.js and copy your connection string (ex. mongodb+srv://:@cluster0.mongodb.net/openchessclub)
OpenSSL is pre-installed on most systems, so to get a SESSION_SECRET variable, simply run openssl rand -base64 32