Spartans Gym is a full-stack web application built for gym operators. It gives admin users complete control over memberships, finances, inventory, and staff — while providing receptionists a focused interface for daily operations like checking in clients and processing renewals.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/azahel79/Spartans-gym/llms.txt
Use this file to discover all available pages before exploring further.
Quick Start
Get the backend and frontend running locally in minutes
Deployment Guide
Deploy to production on Railway, Netlify, or Vercel
API Reference
Explore every REST endpoint with request and response schemas
Core Features
Dashboard, reception, memberships, POS, inventory, and more
What Spartans Gym Covers
Spartans Gym is designed for the day-to-day reality of running a gym. Every feature maps directly to a staff workflow:Reception & Attendance
Register daily check-ins, view member status, and flag expiring memberships in real time
Client Management
Create, search, and manage member profiles with photo upload and membership history
Memberships & Plans
Configure monthly, quarterly, semi-annual, and annual plans with automatic expiry calculation
Point of Sale
Sell supplements, snacks, and merchandise with a cart-based POS and auto-stock deduction
Inventory
Track product stock levels, set reorder thresholds, and upload product images via Cloudinary
Transaction History
Filter and export all membership and product sales by date range and payment method
Role-Based Access
Spartans Gym enforces two roles across every feature:| Feature | Admin | Receptionist |
|---|---|---|
| Dashboard (revenue data) | ✅ | ❌ |
| Dashboard (attendance data) | ✅ | ✅ |
| Register attendance | ✅ | ✅ |
| Create / renew clients | ✅ | ✅ |
| Edit / delete clients | ✅ | ❌ |
| Point of sale | ✅ | ✅ |
| Manage inventory | ✅ | View only |
| Manage plans | ✅ | ❌ |
| Manage users | ✅ | ❌ |
| Gym configuration | ✅ | ❌ |
Getting Started
Clone the repository
Clone
azahel79/Spartans-gym and navigate to the spartans-gym subdirectory containing both backend and frontend-spartans-gym.Configure environment variables
Copy
backend/.env.example to backend/.env and frontend-spartans-gym/.env.example to frontend-spartans-gym/.env. Fill in your MySQL connection string and JWT secret.Set up the database
From the
backend directory, run npm install, then npm run prisma:generate, npm run prisma:migrate, and npm run seed to create tables and a default admin account.