/jim-app

Primary LanguageTypeScript

Copy of Jim Logo (3)

Jim: Your Personal Gym Trainer

Github link: https://github.com/ming1in/jim-app

What is Jim?

Insert Jim: Your Personal Gym Trainer. Jim is here to assist you in your time of need. On our website, you would be able to find exercises for the muscle groups you are working on, whether it is a push, pull, or leg day. Jim will easily give you a range of random exercises to help you reach your fitness goals. Jim is a site that will not make you scroll endlessly through different social media platforms to find a decent workout that you want to do. It will create workouts for you completely if your brain is fried that day and you can get the satisfaction knowing you got a complete workout. Log in with Jim and save workouts that you like, or log in with Jim and find exercises for different muscle groups.

Getting Started with Create React App

This project was bootstrapped with Create React App.

Available Scripts

In the project directory, you can run:

yarn or yarn install

Installs required packages.

Front End

cd client

yarn install

The way that this works is that in the front-end, you'll need to cd into client, and then do the following commands:

yarn start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

Back End

For backend, navigate to server, and then do the following commands in a separate terminal from front end:`

cd server

yarn install

The way that this works is that in the back-end, you'll need to cd into server, and then do the following commands:

yarn start

Some of Jim's Dependencies

Material UI

Material UI creates react components for faster and easier web development. We use this to help design our system and so that we have beautiful designs that help enhance our website and make it more user-friendly.

React Testing Library

The React Testing Library builds on top of the DOM Testing Library by adding APIs for working with React components. This library encouranges your applications ot be more accessible and allows us to get our tests closer to using our components the way a user would.

Axios

Just like in our other assignments in class, we use axios which is a promise based HTTP client for the browser. This helps us send asynchronous HTTP requests to endpoints and we use it with React.

Formix

Formix is a small group of React componest and hooks that help us build our forms in React. This helps with validation and error messages, handling form submission, and getting values in and out of the form state.

Lodash

Lodash makes javasript easier by taking out the hassle when working with arrays, numbers, objects, strings, etc. We use it to iterate through arrays, objects and strings, and manipulate and test values.

Moment

Just like in our class labs, we use moment.

TypeScript

TypeScript is an open-source language which builds on top of JavaScript by adding static type definitions. We use this to transform our javascript code and make formatting every page beautifully.