Skip to content

A PHP Laravel web application that uses most of Laravel technologies to build that gym system.The System is based on rules. Admin, City Manager, Gym Manager. All Crud operations running using data tables.

Notifications You must be signed in to change notification settings

ashrafeldawody/GYM-APP

Repository files navigation

Simple Gym System

Description

A PHP Laravel web application that uses most of Laravel technologies to build that gym system.The System is based on rules. Admin, City Manager, Gym Manager. All Crud operations running using data tables.

Content

System Rules

System Features

User API endpoints

Designs

Web Screenshots

API Screenshots

Installation

Contributors

System Rules

  • Admin: admin have access to everything in the system.

  • City Manager: can do what Gym Manager do with extra functionalities ...like he can see all gyms in his city and make CRUD on any gym or gym manager in his city.

  • Gym Manager:can CRUD training sessiosn and assign coaches to theses sessions.

System Features

  • Buy Package for user throw stripe: any role can buy pacakge for user thorw his visa.

  • Statistics: The system provide statistics for the following:

    • pie chart that shows the percent males to females attendance.

    • basic line chart which show how much money we got in 12 months for this year.

    • pie chart to show each city name and how many attendances have been made in his city.

    • pie chart that shows the top 10 users with there bought training Sessions number.

    • All Charts support filering by year.

User API endpoints

  • The system provides an api for users.

  • endpoint to register, he needs to enter his (name ,email, gender ,password, password confirmation, date of birth, profile_image) all of these fields are required.

  • after user registeration an email verification link sent to him.

  • After user is verified a greeting message is sending to him using queue jobs.

  • endpoint to login by sending him an access token after specifing his email & password

  • endpoint to update his profile info

  • endpoint to see his remaining training session for example

    {
        total_training_sessions:1000,
        remaining_training_sessions:300,
    }
  • endpoint to attend training sessions

  • endpoint to see his attendance history

Designs

Database ERD

ERD-Final EED drawio

Screen Shots

Web

Admin Dashboard

admin 01

Gyms Datatable

admin 02

Training Sessions Datatable

admin 03

Add Training Session

Session add

Session add with validation

Delete

Confirmation

delete

delete failed

Success Message

edit success

Purchase History

purchase history

API

Register

api_register

After Registeritaion Success Mail Verification send to the user

Mail Verifaction

mail_ver_1

Token Using Sanctum

token

Verify Mail

mail_ver_2

Welcome Mail After Verification

mail_welcome

Installation

1.clone the project

git clone https://github.com/ashrafeldawody/GYM-APP.git
  1. Run Composer install in the project folder
composer install
  1. Copy .env.example file in the project folder
cp .env.example .env
  1. install node pacakges
npm install
npm run dev
  1. install mysql server

create database with any name then edit the following in your .env file

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database_name
DB_USERNAME=user_name
DB_PASSWORD=password
  1. Run the following command
php artisan key:generate; php artisan migrate --seed; php artisan serve;
  1. open your browser and open the following link

http://localhost:8000/

if you face any problem don't hasitate to contact us.

Contributors

Ayman kheirEldeen Ashraf Eldawody
Ahmed Hafez Amr Abdallah

About

A PHP Laravel web application that uses most of Laravel technologies to build that gym system.The System is based on rules. Admin, City Manager, Gym Manager. All Crud operations running using data tables.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •