MyJourney is a web application where users can create, save, and edit their workout journey. Furthermore, they have the option to chat with an AI or ask questions about their workout journey.
Users can :
- Create an account.
- Log in with the created credentials.
- Log out.
- Update their email or password.
- Delete their account.
- Design personalized workout routines by submitting a YouTube video URL in the fitness page form. The video title and duration will be auto-filled with the help of the YouTube API, but users can customize the title as desired.
- Update an existing workout.
- Delete a workout from the list.
- Ask questions about their workout journey through a rule-based chatbot.
- Chat with an AI using GEMINI.
- React.js
- Redux
- SCSS
- Node.js/Express
- MySQL (Azure SQL)
- YouTube API
- Gemini API
This project requires a Node.js API and a MySQL (or Azure SQL) database to work. However, here are the steps to run the frontend on your computer:
-
Clone the project using the command
git clone https://github.com/haingo-raz/MyJourney.git
. -
Install the project dependencies using
npm install
. -
Get a YouTube API key to automatically fill entries when creating a workout. Find out how to get your own API here.
-
Set up the environment variables by creating a .env file. Follow the content of the example.env file. The default URL of the Node.js API is
http://localhost:8080
when run locally. Also, add your YouTube API key here. -
Run
npm start
. -
View the app on
localhost:3000
in your browser. -
To ensure code consistency, run
npm run format
after making any changes. This command uses Prettier to format all files within thesrc
directory.