View Code? Open in Web Editor
NEW
The Workout React App is a feature-rich fitness and exercise tracking application that empowers users to create, manage, and analyze their running and cycling workouts. Built with React on the frontend and a custom Express.js/MongoDB backend, this project provides a comprehensive fitness solution.
Home Page: https://workout.up.railway.app/
HTML 0.23%
CSS 0.20%
Shell 0.02%
TypeScript 95.20%
JavaScript 4.34%
react-workout-app's Introduction
react-workout-app's People
Contributors
Watchers
react-workout-app's Issues
Create a custom backend via Express JS
Setup Mongo Db, mongoose and connect custom backend with it
Implement logic related to workouts for getting, creating, updating, deleting, deleting all, and adding to favorites them
Use Firebase for authentication purposes and store workouts on MongoDb as well as authenticated Firebase user
Connect Firebase user to Mongo DB, implement authentication and hook up a specific user with corresponding data that is stored in Mongo Db, etc.
Create barebone Workouts Quiz component, update routes, adjust styles in navigation
Add endpoint to retrieve workouts quiz questions from MongoDB
Connect backend endpoint for retrieving workouts quiz questions from MongoDB with React App
Create quiz introduction view component
Add quiz page layout, applied styles, updated redux slice
Implement logic related to displaying questions on next button click, reset quit on reset button click, updated styled based on the correct or wrong answer, updated slice
Add quiz progress bar, refactor Questions component
Add quiz timer, adjust styles, small refactoring
Implement 50/50 functionality, adjust quiz logic and styles
check login/logout flow
check sign-up form
most likely add google auth
check forgot password flow
Create a new page
Setup react-table
Add sorting, filtering, and pagination support
Adjust the existing logic of displaying navigation items based on the authenticated user
Highlight the active navigation link
Display a user photo when he/she is authenticated
Add Actions panel with sorting options (selects), delete and edit icons
Implement sorting by workout type
Extend existing sorting and add sorting by workout indicator such as duration, distance etc.
Allow to reset selected sorting oprion on nutton click
Allow user to delete all workouts (with confirmation pop-up)
Integrate app with open weather API
Create weather service
Create a Weather widget for desktop and mobile views
Display current workout weather details (inside modal window) on weather icon click
apply React-hook-form to workout form
add input field validation
create a separate file for input and select fields
make adjustments in adding workout (WorkoutContext and form files) etc
Decided to go for React Hook Forms
Make update with auth flow
Customize reset password flow
Add history service, to use it outside a functional component
Create a barebone Calories Calculator components, updates routes, adjust styles in navigation
Add BMI Calculator main layout with styles, inputs, selects and actions buttons logic
Implement logic to calculate BMI with different metric
Divided Workout into different components
Change delete icon and add edit one
Change styles for Workout and Workouts page in general
Adjust pace and speed calculations
Customized a scrollbar
Create a reusable Modal component
Implement optimistic workout deletion with confirmation popup
Refactor Auth module with custom hooks
Refactor Auth forms with configs and reusable BaseForm component
Refactor BMICaclulator form with hooks
Refactor BMICalulator inputs and action buttons with configs and utils
Refactor Header module with custom hooks and utils
Refactor Home module with utils
Refactor Profile module with custom hook
Refactor inputs, selects and action buttons config to make it more global and reusable and avoid code duplication
Refactor profile forms with configs and utils
Refactor Workouts module with configs and utils
Refactor WorkoutsDetails module with configs and utils
Refactor WorkoutsQuiz module with custom hooks, configs and utils
Refactor App component with custom hook
Refactor Header and Navigation components
Store user token in local storage
Fix Slider styles
Adjust slides
Move Toast and Slider slider to a global styles
Create a Profile component
Implement firebase user image upload, store image URL in Mongo DB alongside with updated user name
Implement firebase user updating password in profile page
Adjust profile page layout, schema, and auth service
Setup ESlint, stylelint, prettier for a project
Introduce state management and replace Context API with Redux Toolkit
Create slices for User, Workouts, WeatherDetails
Create services for Workouts and WeatherDetails to get needed data
Separate slice and actions, etc.
Made a migration from JS to Typescript, setup a tsconfig file.
Fix some basic issue with types in order to not crash an app