dustinruck / fitclub

Integration Project - Group 4

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

fitclub

Integration Project - Group 4

Project Description

This project is a web app that allows users to sign up to fitness classes. The app will allow users to view the classes available, sign up to classes, and view their upcoming classes. The app will also allow the admin to view the users that have signed up to classes. Users can login/logout and see and edit their profile. The admin can add classes, edit classes, delete classes, view users, and view classes data. The site features a home page, a classes page, a calendar, a sign up page, a login page, a profile page, user photos, a blog, an about us page and an admin page. Login can be done with email and password or with Google. Users can conduct transactions through Stripe in signing up for membership or purchasing merchandise. The app will be built using:

Frontend: React, Axios, Bootstrap

Backend: Spring Boot, Spring Security, JWT, OAuth2

Database: ?? MongoDB/MySQL/PostgreSQL/Azure SQL Database/Google Cloud SQL/Amazon RDS/...

Deployment: ?? Heroku, AWS, Azure, Google Cloud Platform, Firebase, ...

Development: Git, GitHub, Jira, Teams, Visual Studio Code, IntelliJ IDEA, Postman

API's: Stripe, ...

Maybe: Google Analytics, Youtube API, Google Calendar API,

Team Members

Name | Email | Sprint 1 Starting Role | Sprint 2 Starting Role

  • [Weizhen] (Product Owner, BE) ( )
  • [Wissam] ( ) (BE) ( )
  • [Hossein] ( ) (BE) ( )
  • [Akashdeep] ( ) (FE) ( )
  • [Dustin] ( ) (FE) ( )

Sprint 1

Sprint 1 Goal

The goal of Sprint 1 is to create the basic structure of the app. This includes creating the frontend and backend projects, setting up the database, creating the basic pages, basic crud operations, and connecting BE and FE.

User Stories

  • As a user, I want to be able to login/logout so that I can access my account.
  • As a user, I want to be able to see and edit my profile.
  • As a user, I want to be able to view classes available and I can sign up for classes.
  • As a user, I want to be able to view my classes signed up for with the date and tyimes.
  • As an admin, I want to be able to view the users that have signed up to classes.
  • As an admin, I want to be able to add, edit, or delete classes.
  • As an admin, I want to be able to set classes max registration limit.
  • As an admin, I want to be able to view users and their info and classes.
  • As an admin, I want to be able to view classes data.
  • As an admin, I want to be able to add, edit, or delete blog posts.
  • As a user, I want to be able to view blog posts and comment.
  • As a user, I want to be able to sign up for membership.
  • As a user, I want to be able to buy merchandise.

Dev Setup

Frontend

npm install axios

npm install react-router-dom

npm install bootstrap

npm i react-bootstrap

npm i react-calendar

npm i react-login-page

npm i fontawesome

npm i --save @fortawesome/react-fontawesome

npm i --save @fortawesome/fontawesome-svg-core

npm i --save @fortawesome/free-solid-svg-icons

npm i --save @fortawesome/free-brands-svg-icons

Backend

About

Integration Project - Group 4


Languages

Language:JavaScript 67.9%Language:Java 27.1%Language:CSS 2.9%Language:HTML 2.0%