/StayFit

Primary LanguageTypeScript

Built With

Docker ESLint Express.js Heroku Postgres JavaScript JWT NodeJS Nodemon NPM React React Router Redux Supertest TypeScript TailwindCSS Testing-Library Visual Studio Code Vite Vitest

Introduction

Welcome to Stay Fit, the app that makes it simple to track your latest workouts.

If you would like to use the live version of the app, please visit this link www.stayfit.dev

Features

  • Stay Fit allows for quick and safe signup/login so that you can keep track of your latest workouts via a Postgresql database.
  • User workout pages are secured via JSON Web Tokens, so you never have to worry about another user getting access to your page.
  • After signing up and logging in, simply click the Add Workout button to add your first workout.
  • You can easily edit or delete existing workouts by clicking their respective buttons as well.
  • Securely logout any time via the Logout button

ezgif com-video-to-gif

ezgif com-optimize

Getting Started

  • Fork and clone the repo to your local machine.
  • Create a .env file and declare a variable PG_URI with the assigned value of your Postresql connection string.
  • Declare a second variable in your .env file as JWT_SECRET and assign its value to a random string.
  • Then run npm install to install dependencies.
  • After that, simply run npm run dev to start in development mode.
  • Run npm run build and npm run start to start in production mode.
  • Run npm t to run all frontend/backend unit tests.
  • Run npm run lint to do a full linting check.
  • Run npm run typecheck to do a full typecheck.

Additional Info

This app harnesses the power of Redux, so be sure to use the Redux Dev Tools

Workout images are sourced from https://wger.de/en/software/api