Skip to content

saktronX/Gym_Management_system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

23 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ‹๏ธ Gym Management System

A full-stack Gym Management System designed to simplify the day-to-day operations of a fitness center. The application provides an intuitive interface for managing members, trainers, membership plans, enrollments, and payments while using a RESTful backend API and a MySQL database for reliable data management.

This project demonstrates full-stack web development concepts including CRUD operations, RESTful API development, relational database design, and responsive web interfaces.


๐Ÿ“Œ Features

  • ๐Ÿ“Š Dashboard with gym management overview
  • ๐Ÿ‘ฅ Member Management (Create, Read, Update, Delete)
  • ๐Ÿ‹๏ธ Trainer Management
  • ๐Ÿ’ณ Membership Plan Management
  • ๐Ÿ“ Member Enrollment
  • ๐Ÿ’ฐ Payment Management
  • ๐Ÿ—„๏ธ MySQL Database Integration
  • ๐Ÿ”„ RESTful API Architecture
  • ๐Ÿ“ฑ Responsive User Interface
  • โšก Fast and lightweight application

๐Ÿ›  Tech Stack

Frontend

  • HTML5
  • CSS3
  • JavaScript (ES6)

Backend

  • Node.js
  • Express.js

Database

  • MySQL

Development Tools

  • Git
  • GitHub
  • Postman
  • VS Code

๐Ÿ“‚ Project Structure

Gym_Management_System/
โ”‚
โ”œโ”€โ”€ backend/
โ”‚   โ”œโ”€โ”€ routes/
โ”‚   โ”œโ”€โ”€ config/
โ”‚   โ”œโ”€โ”€ node_modules/
โ”‚   โ”œโ”€โ”€ package.json
โ”‚   โ”œโ”€โ”€ server.js
โ”‚   โ””โ”€โ”€ .env
โ”‚
โ”œโ”€โ”€ frontend/
โ”‚   โ”œโ”€โ”€ css/
โ”‚   โ”œโ”€โ”€ js/
โ”‚   โ”œโ”€โ”€ images/
โ”‚   โ”œโ”€โ”€ pages/
โ”‚   โ””โ”€โ”€ index.html
โ”‚
โ”œโ”€โ”€ database/
โ”‚   โ””โ”€โ”€ gym_management.sql
โ”‚
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ .gitignore
โ””โ”€โ”€ LICENSE

๐Ÿš€ Getting Started

1. Clone the Repository

git clone https://github.com/saktronX/Gym_Management_system.git

2. Navigate to the Project

cd Gym_Management_system

3. Install Backend Dependencies

cd backend
npm install

4. Configure Environment Variables

Create a .env file inside the backend folder.

DB_HOST=localhost
DB_USER=your_username
DB_PASSWORD=your_password
DB_NAME=gym_management
PORT=5000

5. Import the Database

CREATE DATABASE Gym_Management_System;
USE Gym_Management_System;

Then import gym_management.sql using MySQL Workbench, phpMyAdmin, or the MySQL command line.

6. Start the Server

npm start

or

node server.js

The backend will start on:

http://localhost:5000

Open the frontend in your browser to begin using the application.


๐Ÿ—ƒ Database Modules

The project manages the following entities:

  • Members
  • Trainers
  • Membership Plans
  • Payments
  • Enrollments
  • Classes
  • Gym Branches
  • Maintenance Records
  • Lockers

The Gym Management System uses MySQL as its relational database. Database design, schema creation, data management, and migrations were performed using XAMPP and phpMyAdmin.

Database Files

  • gym_management.sql โ€“ Complete MySQL database schema for setting up the project.
  • migrate_v2.sql โ€“ Migration script containing schema updates and modifications.
  • MIGRATION_NOTES.md โ€“ Documentation describing the migration changes.

Entity Relationship Diagram

The following ER diagram illustrates the database structure and relationships between the project's tables.

ER Diagram


๐ŸŒ REST API Overview

Method Endpoint Description
GET /members Get all members
POST /members Add a new member
PUT /members/:id Update member
DELETE /members/:id Delete member
GET /trainers Get trainers
POST /trainers Add trainer
GET /plans Membership plans
GET /payments Payment records
POST /payments Add payment
GET /enrollments Member enrollments

๐Ÿ“ธ Screenshots

Add screenshots of your application inside an assets/ folder and replace the placeholders below.

Dashboard

assets/dashboard.png

Members

assets/members.png

Trainers

assets/trainers.png

Membership Plans

assets/plans.png

Payments

assets/payments.png

๐Ÿ”ฎ Future Enhancements

  • User Authentication
  • Role-Based Access Control
  • Attendance Tracking
  • Workout Schedule Management
  • Diet Plan Management
  • Email Notifications
  • Report Generation
  • Analytics Dashboard
  • Docker Deployment
  • Cloud Hosting

๐Ÿงช Testing

You can test the REST APIs using Postman or any API client.

Verify CRUD operations for:

  • Members
  • Trainers
  • Membership Plans
  • Payments
  • Enrollments

๐Ÿค Contributing

Contributions are welcome.

  1. Fork the repository.
  2. Create a new feature branch.
  3. Commit your changes.
  4. Push the branch.
  5. Open a Pull Request.

๐Ÿ“„ License

This project is licensed under the MIT License.


๐Ÿ‘ฅ Contributors

Saksham Verma

  • Full-stack application development
  • Backend API development
  • Frontend implementation
  • Project architecture

Anant Singh Kushwaha

  • Database schema design and improvements
  • Relational database normalization
  • Entity Relationship (ER) Diagram
  • Foreign key relationships and schema updates
  • Database documentation

โญ Support

If you found this project useful, consider giving it a โญ Star on GitHub. It helps others discover the project and supports future development.

About

Full-stack web application for efficient gym operations with a responsive frontend, RESTful backend, and MySQL database.

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages