OpenChessClub
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.
Deploy OpenChessClub Instantly
Features
- 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
Installation
1. Clone the Repository
git clone https://github.com/openchessclub/openchessclub.git
cd openchessclub2. Install the dependencies
3. Set your environment variables
At the root of this project, you'll find .env.example. Rename it to .env, and set your variables accordingly.
MongoDB setup
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)
Generating a secure session secret
OpenSSL is pre-installed on most systems, so to get a SESSION_SECRET variable, simply run openssl rand -base64 32