dkey666/game-club-manager
Open-source Telegram-first platform for gaming club operations, player engagement, ranks, rewards, referrals, and AI-assisted analytics for bookings, usage patterns, and operational improvement.
Open-source Telegram-first platform for gaming club operations, player engagement, and AI-assisted analytics.
Game Club Manager combines a PHP backend, SQLite storage, Telegram bot and webhook flows, a customer-facing WebApp, and an admin panel for bookings, rewards, ranks, daily bonuses, referrals, tasks, notifications, and operational statistics.
It is built for gaming clubs that need more than a simple booking page. The project connects daily operations, retention mechanics, and decision-support analytics into one extensible open-source system.
Why this repository exists
This repository is the public OSS version of a club management platform that was previously used under a private brand/domain. It was prepared for open-source publication by moving secrets to .env, documenting installation and architecture, formalizing dependencies, and separating runtime artifacts from source control.
Highlights
🎮 Player WebAppTelegram-connected booking flow with profile, rewards, referral links, daily bonuses, and rank progression. |
🛠️ Admin ControlReal-time management for PCs, bookings, users, tasks, balances, and operating statistics. |
🤖 AI AnalyticsStructured analytics pipeline for hall demand, top PCs, traffic peaks, and actionable improvement ideas. |
🏆 Retention LoopsPoints, ranks, tap-to-earn, daily claims, referral rewards, and task-based engagement flows. |
🌍 LocalizationRussian, Uzbek, and English user-facing support with Telegram-aware language handling. |
🔓 OSS-ReadyMIT license, docs, changelog, roadmap, screenshots, templates, and contributor-facing repository health files. |
Why it matters
Most gaming club software solves only one narrow layer of the business: bookings, CRM, or messaging. Dkx Game Club OS/Manager connects these layers inside a Telegram-first workflow that players already use. The result is a system that helps clubs manage computers and bookings, keep users returning through rewards and progression, and understand real usage patterns through analytics instead of guesswork.
Core capabilities
- Telegram WebApp entrypoint with request validation
- Booking flow for gaming PCs
- Admin interface for computers, bookings, users, tasks, points, and statistics
- Loyalty points, user ranks, daily rewards, tap-to-earn bonuses, referrals, and notifications
- Task-based engagement flows such as social actions and promotional activities
- AI-oriented analytics for user behavior, booking trends, visitor peaks, and operational recommendations
- Email verification flow via SMTP + PHPMailer
- Russian, Uzbek, and English support for the player-facing experience
- SQLite-based storage for quick local setup
Product overview
Game Club Manager is designed as an open-source operating system for gaming clubs that want both operational tooling and player retention mechanics in one place.
On the player side, the system provides a Telegram-connected WebApp where users can book PCs, register profiles, accumulate loyalty points, unlock higher ranks based on total progress, claim daily bonuses, use a tap-to-earn mechanic with a capped daily reward, complete engagement tasks such as subscribing to social channels, and invite friends through referral links to earn additional rewards.
On the operations side, administrators can manage PC statuses, review bookings, track users, assign tasks, adjust balances, and monitor activity through a Telegram-connected admin interface. The platform also includes an AI-oriented analytics layer focused on practical decision support: analyzing user behavior, identifying which halls and individual PCs are booked most often, detecting which days bring the highest visitor traffic, and producing suggestions that help improve retention, utilization, and overall club performance.
This makes the project useful both as a deployable tool and as an open-source foundation. Clubs can adapt it to local workflows, while contributors can extend clear areas such as booking rules, gamified retention logic, analytics prompts, admin tooling, or localization support.
Tech stack
- PHP 8.1+ for backend endpoints and Telegram webhook handling
- SQLite for local persistence
- PHPMailer for SMTP email delivery
- HTML, CSS, and vanilla JavaScript for the frontend
- Optional Node.js utility for local database bootstrap
- Apache
.htaccessrules for production hosting
Repository layout
.
├── api.php # Main JSON API
├── index.php # Telegram bot webhook + main web entry
├── admin.html # Admin interface
├── booking.html # Booking page
├── points.html # Rewards/points page
├── profile.html # User profile page
├── config.php # Shared runtime configuration loader
├── ai/
│ ├── ClubAnalyticsLight.php
│ └── analyze.php # Lightweight AI analytics entrypoint
├── database.js # Optional Node bootstrap helper
├── database/
│ └── schema.sql # SQLite schema reference
├── docs/
│ ├── architecture.md
│ ├── installation.md
│ └── ai-module.md
├── screenshots/ # Product and interface screenshots
├── composer.json # PHP dependency manifest
├── package.json # Optional Node utility manifest
├── CHANGELOG.md
└── ROADMAP
Quick start
- Install PHP dependencies:
composer install- Copy environment variables:
cp .env.example .env-
Fill in Telegram, SMTP, and deployment values in
.env. -
Create the SQLite database:
npm install
npm run db:init- Run on a local PHP server:
php -S localhost:8000- Open
http://localhost:8000/.
Configuration
The public repository does not ship production secrets. Required variables are documented in .env.example.
Important values:
APP_NAME: repository/project title, defaultDkx Game Club OS/ManagerAPP_SHORT_NAME: short UI label, defaultDKX Game ClubAPP_URL: base deployment URLWEBHOOK_URL: Telegram webhook targetBOT_TOKEN: Telegram bot tokenADMIN_IDS: comma-separated Telegram admin IDsGROUP_ID: Telegram group/channel identifierDB_NAME: SQLite file nameSMTP_*: email delivery settingsOPENAI_API_KEY: API key for the analytics moduleOPENAI_MODEL: model name for analytics requests, defaultgpt-5.4
Dependencies
PHP dependencies are managed through composer.json.
phpmailer/phpmailer
Node dependencies are managed through package.json.
better-sqlite3
Security and publication notes
- Do not commit
.env,*.db, log files, or local diagnostics. - Review
.htaccessbefore production deployment. - Replace example URLs/domains with your own deployment host.
- Rotate any old secrets that were ever used outside this sanitized OSS setup.
Documentation
Contribution areas
Useful contribution directions include:
- improving booking rules, hall logic, or workstation management flows
- extending loyalty mechanics such as ranks, daily bonuses, referrals, and task rewards
- refining admin tooling and operational dashboards
- expanding analytics prompts, reporting structure, and data coverage
- hardening deployment, installation, and documentation for wider OSS adoption
AI analytics module
The repository includes a lightweight analytics module that reads the SQLite database, aggregates club metrics, and can send them to the OpenAI API for a structured report.
Its purpose is to turn raw club activity into actionable signals for administrators. Even in the lightweight version, the module is aimed at questions that matter operationally: which halls and PCs attract the most bookings, when traffic is highest, how engagement systems are being used, and which improvements could increase retention or workstation utilization.
Metrics-only mode:
php ai/analyze.php --metrics-onlyFull AI analysis:
php ai/analyze.phpOptional flags:
--db=club.dbto point to another SQLite file--jsonto print JSON instead of a console report--save=reports/latest.txtto write the output to a file
Current lightweight coverage includes:
- user counts, registrations, and points balances
- booking volumes, hall demand, top PCs, and busiest weekdays
- task completion activity
- referral and reward usage
- points economy and rank distribution
Screenshots
Bot Start |
Preloader |
Registration Flow |
Main Homepage |
Homepage Secondary |
Rankings View |
Booking |
Profile |
Player Statistics |
About Screen |
About Secondary |
Social / Contact View |
License
Released under the MIT License. See LICENSE.











