AF

augustemna/flexmatch

Developer tools
0 stars Quality 40 Trend 8

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


License

ISC

View this README on GitHub

Recommended Tools

Try a different keyword or remove a filter.

Install

npx skillfish add augustemna/flexmatch