A PHP Laravel web application that uses most of Laravel technologies to build that gym system

Overview

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
You might also like...

NodeJS application to upload an image to a S3 Bucket on AWS.

NodeJS application to upload an image to a S3 Bucket on AWS.

node-upload-image-to-s3-bucket NodeJS application to upload an image to a S3 Bucket on AWS. How it works: You must make a POST request to /upload-imag

Sep 28, 2022

💬 Real-time chat application prototype that can summarise the entire chat log

💬 Real-time chat application prototype that can summarise the entire chat log

Chat summarizer 📝 Disclaimer! This is a prototype and a fun project that I've been working on and it is not ready for production. It was done in a fe

Jan 22, 2022

RANDM - a dating application that helps users find matches through randomization

RANDM - a dating application that helps users find matches through randomization

RANDM - The Random Dating App RANDM is a dating application that helps users find matches through randomization. While other dating apps on the market

Oct 31, 2022

Travel Lovers - an application that allows a travel enthusiast to create an account to log past, upcoming, and bucket-list trips

Travel Lovers - an application that allows a travel enthusiast to create an account to log past, upcoming, and bucket-list trips

Travel Lovers Table of Contents Description Tools Used Installation Instructions Usage License Tests Questions Description Travel Lovers is an applica

Aug 31, 2022

NestJS module for adding translations to the application, with a pipe for translating validation errors

nestjs-translates NestJS module for adding translations to the application, with a pipe for translating validation errors Installation npm i --save ne

Jul 26, 2022

A simple implementation of a task list application that can be used to add, remove, edit and check users tasks

A simple implementation of a task list application that can be used to add, remove, edit and check users tasks

"To-do list" is a tool that helps to organize daily activites. It simply lists the things which are needed to be done and allows user to mark them as complete. In this step of project, the CRUD (create, update, delete) methods are implemented. This simple web page is built using webpack and served by a webpack dev server.

Mar 28, 2022

API routes are great for APIs, but for small projects where you have to access server data or hide application logic, you can just call a server function from the client.

API routes are great for APIs, but for small projects where you have to access server data or hide application logic, you can just call a server function from the client.

Mar 6, 2022

Bookmarklet to remove sticky elements and restore scrolling to web pages!

Bookmarklet to remove sticky elements and restore scrolling to web pages!

Bookmarklet to remove sticky elements and restore scrolling to web pages!

Dec 29, 2022

Web app for adding EU Digital COVID Certificates to your wallet apps

Web app for adding EU Digital COVID Certificates to your wallet apps

Web app for adding EU Digital COVID Certificates to your wallet apps

Dec 31, 2022
GitHub's most starred repositories created in the last 7 days

GitHub Weekly Trends Most starred repositories in the last 7 days Live app url: ghtrends.netlify.app Available Scripts In the project directory, you c

Ebenezer Don 6 Feb 3, 2022
🤖 EvoBot is a Discord Music Bot built with discord.js & uses Command Handler from discordjs.guide

?? EvoBot is a Discord Music Bot built with discord.js & uses Command Handler from discordjs.guide

Erit Islami 1.4k Jan 8, 2023
Free, open-source crypto trading bot, automated bitcoin / cryptocurrency trading software, algorithmic trading bots. Visually design your crypto trading bot, leveraging an integrated charting system, data-mining, backtesting, paper trading, and multi-server crypto bot deployments.

Free, open-source crypto trading bot, automated bitcoin / cryptocurrency trading software, algorithmic trading bots. Visually design your crypto trading bot, leveraging an integrated charting system, data-mining, backtesting, paper trading, and multi-server crypto bot deployments.

Superalgos 3.1k Jan 1, 2023
Insider Unlocked is an ongoing web application

Insider Unlocked is an ongoing web application we have been co-developing for the past few months which aggregates stock trading data of US senators and presents it in a digestible manner for the average retail investor

null 3 Feb 13, 2022
A simple server application that allows you to perform Wake-on-LAN remotely with a web interface

WoL Helper A simple server application that allows you to perform Wake-on-LAN remotely with a web interface. Usage Install: npm install -g wol-helper

Hongbo 5 Jul 27, 2022
This web application retrieves real live data from the SpaceX API

This web application retrieves real live data from the SpaceX API. It provides commercial and scientific space travel services, by allowing users to book rockets and join selected space missions.

Sahar Abdel Samad 12 Aug 9, 2022
This is a Todo app build with JS, HTML/CSS , Webpack

todo-list Todo List app Additional description about the project and its features. Built With HTML5 CSS3 Webpack JavaScript Live Demo Live Demo Link G

houssam hichami 6 May 22, 2022
ThinkMore Forum frontend build with Next.js, Typescript, Redux, Jest, Sass, MUI.

ThinkMoreForum-Frontend Website Desktop Mobile Front-end technology stack Next.js Redux Typescript MUI Axios Husky React testing-library Jest Eslint,

Alan 151 Dec 10, 2022
A user script for the web that allows you to view and edit files in the Godot Web Editor

Godot-Web-File-Manager This is a user script for the web that allows you to view and edit files in the Godot Web Editor. You can even use this to enab

Roujel Williams 4 Jan 31, 2022
TrackIt - Single Page Application that helps the user track their habits.

TrackIt - Single Page Application that helps the user track their habits. Implemented with JavaScript/React and an API server which enables the user to sign-in or sign-up in the app.

Lucas Azzolini Vieira 7 Apr 13, 2022