AI-powered gym management platform
Overview
AI-powered gym management platform connecting gym owners and fitness enthusiasts across Tunisia. FlexMatch is a full-stack web application that allows: - to discover gyms, book classes, and get AI-powered recommendations - to manage their gym, services, capacity, and revenue with AI insights - to oversee the entire platform via a dedicated backoffice - React.js (Create React App) - Tailwind CSS v3 - React Router DOM - Axios - Lucide React - Node.js + Express.js - MongoDB + Mongoose - JWT Authentication - Nodemailer (Mailtrap) - Bcryptjs - Python - TensorFlow / PyTorch - Scikit-learn - Prophet / LSTM (revenue forecasting) - Collaborative filtering (recommendations) - Google Maps API (geolocation) - Stripe / PayPal (payments in DT) - Firebase (notifications) - DigitalOcean (hosting) - Node.
README
FlexMatch
AI-powered gym management platform connecting gym owners and fitness enthusiasts across Tunisia.
Overview
FlexMatch is a full-stack web application that allows:
- Clients to discover gyms, book classes, and get AI-powered recommendations
- Gym Owners to manage their gym, services, capacity, and revenue with AI insights
- Admins to oversee the entire platform via a dedicated backoffice
Repository Structure
FlexMatch/
├── flexmatch-backend/ # Node.js + Express REST API
└── flexmatch-frontend/ # React.js Web Application
Tech Stack
Frontend
- React.js (Create React App)
- Tailwind CSS v3
- React Router DOM
- Axios
- Lucide React
Backend
- Node.js + Express.js
- MongoDB + Mongoose
- JWT Authentication
- Nodemailer (Mailtrap)
- Bcryptjs
AI Layer (planned)
- Python
- TensorFlow / PyTorch
- Scikit-learn
- Prophet / LSTM (revenue forecasting)
- Collaborative filtering (recommendations)
Integrations
- Google Maps API (geolocation)
- Stripe / PayPal (payments in DT)
- Firebase (notifications)
- DigitalOcean (hosting)
Getting Started
Prerequisites
- Node.js v18+
- MongoDB (local or Atlas)
- npm 9+
Clone the repo
git clone https://github.com/AugustEmna/FlexMatch.git
cd FlexMatch
Run the backend
cd flexmatch-backend
npm install
# create your .env file (see flexmatch-backend/README.md)
npm run dev
Run the frontend
cd flexmatch-frontend
npm install
npm start
Features
Client
- Register, OTP verification, login
- Search gyms by location and sport type
- Book and cancel classes
- Pay online in DT (Tunisian Dinars)
- AI personalized recommendations ✦
- AI best hours suggestions ✦
- AI chat assistant ✦
- Smart reminders ✦
Gym Owner
- Manage gym profile and location
- Set services, capacity, and time slots
- View reservations and track payments
- AI revenue forecasting ✦
- AI capacity estimation ✦
- AI peak hours graph ✦
- AI-generated financial reports ✦
Admin
- Manage gyms and clients (CRUD)
- Monitor notifications
- Track revenue across all gyms
- Export analytics
- Reset gym owner accounts
Project Status
| Sprint | Focus | Status |
|---|---|---|
| Sprint 1 | Authentication & User Management | ✅ In Progress |
| Sprint 2 | Gym Management & AI Features | ⏳ Planned |
| Sprint 3 | Client Booking & Personalization | ⏳ Planned |
| Sprint 4 | Admin Backoffice | ⏳ Planned |
Team
- Backend: @AugustEmna
- Frontend: @RiahiNour636
License
ISC
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add augustemna/flexmatch