An open API service indexing awesome lists of open source software.

https://github.com/cobbyelsonfx/workout-tracker

This is a Single Page Application (SPA) that enables users to track their daily workouts, it also uses JWT for user authentication
https://github.com/cobbyelsonfx/workout-tracker

expressjs nodejs reactjs routes tailwindcss usecontext-hook usereducer

Last synced: 2 months ago
JSON representation

This is a Single Page Application (SPA) that enables users to track their daily workouts, it also uses JWT for user authentication

Awesome Lists containing this project

README

          


Workout Tracker


# πŸ“— Table of Contents

- [πŸ“– About the Project](#about-project)
- [πŸ›  Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [πŸš€ Live Demo](#live-demo)
- [πŸ’» Getting Started](#getting-started)
- [Challenges](#challenges)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Install](#install)
- [πŸ‘₯ Authors](#authors)
- [πŸ”­ Future Features](#future-features)
- [🀝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [πŸ™ Acknowledgements](#acknowledgements)
- [❓ FAQ (OPTIONAL)](#faq)
- [πŸ“ License](#license)

# πŸ“–Workout Tracker

**Workout Tracker** This is a MERN stack web application that allows you to track exercises you do every day. It uses Node.js and Express for the backend, and React for the frontend. The application manages the state using React's useContext and useReducer hooks and jwt for authentication..

## πŸ›  Built With

### Tech Stack



### Key Features

- **Authentication with JWT**
- **Users can log their exercises**
- **Search Engine Optimization**

(back to top)

## πŸš€ Live Demo

- [Live Demo Link](https://exercise-tracker-frontend-e4pd.onrender.com)
- ![Home Page](Screenshot 2023-05-23 at 4.02.58 PM 1![image](https://github.com/CobbyElsonfx/Exercise-Tracker/assets/109095646/79d1e8e8-4c51-4b27-b46a-582c1eec3b2e)
>

(back to top)

## πŸ’» Getting Started

>

### Challenges

DATABASE WORKOUT SHOWCASE


After I adding the authentication I realised that when a user logs in he sees the workout added by other users, which means every user is presented with all the workouts in the database.

I accessed the user.id from the requireAuth middleware (id was extracted from the token returned from the authorization header) in the workout controller , where I attached it to the user object and saved it to the database. I updated the model by inlcuding a userId section so that each workout saved in the database could be retrieved using the current userId it was assigned to.

### Prerequisites

To successfully execute this project, the following prerequisites are required:


  • Code Editor: Visual Studio

  • Version Control:Git

  • Node js Installed

  • Linters configuration

```
Example command: npm install to install dependent package
: npm install --save-dev hint@7.x to install webhint
:npm install -g lighthouse to install lighthouse

```

### Setup

Clone this repository to your desired folder:

```sh
cd my-folder
git clone https://github.com/CobbyElsonfx/Code-Future.git
```
### Install

Install this project with:

```
Install this project with:git and npm install
```

(back to top)

## πŸ‘₯ Authors

πŸ‘€ **Andoh Francis**

- GitHub: [@CobbyElsonfx](https://github.com/CobbyElsonfx)
- LinkedIn: [Andoh Francis](https://www.linkedin.com/in/andoh-francis-133aa7245/)

(back to top)

## πŸ”­ Future Features

- [ ] **I will add some animations to make it more user friendly**

(back to top)

## 🀝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the [issues page](../../issues/).

(back to top)

## ⭐️ Show your support

If you liked this project and would like to support me, email me through my email address andohfrancis9187@gmail.com

(back to top)

## πŸ™ Acknowledgments

Special thanks to Students at Brightfield Tech Academy

(back to top)

## ❓ FAQ (OPTIONAL)

- **Where did you get the template for the website?**

- Figma

(back to top)

## πŸ“ License MIT

This project is [MIT](./MIT.md) licensed.

(back to top)