WatchMe (Fitness and Nutrition Tracker)
WatchME is a fitness and nutrition tracking app composed of two main components. The first is a exercising section consisting of: custom workouts for the week, and recommended exercise from list of default exercise. The other part is a nutrition aspect where we can track nutrition macros and have a record of whether or not we hit our goals for the day. There are also several other features like a calendar tracking progress over time, calculated goal macros intake based on your body composition, and recommended meals based on your nutrition goals.
Group Members:
- Diya Parmar @diyaparm
- Jai Uparkar @jai-uparkar
- Yunhao Luo @Yunhao-Luo
- William Huang @whuang602
- Sangita Kunapuli @sangitakunapuli
- Lawrence chen @RAILGUN1124
- Anushka Lodha @anushkal1
Tech Stack
As of right now, we are planning to use React Native to create our app. The reason why we are using React Native instead of the base ReactJS is because we want to focus on creating a mobile app that would work on both Android and IOS. We predicted that most fitness tracker users would only want to use it on their mobile devices so a browser based app wouldn’t be very intuitive.
User Roles
As planned right now, the fitness-nutrition tracker app would have three kinds of users:
1) users who would input their health data and track their workouts and meals
2) users who want to monitor only their workout, and maintain a set schedule/workout plan
3) users who want to have healthy meal suggestions
Installation
Prerequisites
- Download the Expo Go account on your phone.
- Create an account on the app.
Dependencies
- React Native: Used to write functionality and UI on app so that it works on Android and iOS devices. Also, it has other dependencies and packages that were part of our app and consists over 100 dependencies that were too long to list.
- React Navigation: This was used to navigate between the different screens in the app.
Installation Steps
- Scan this QR code in order to deploy the app: https://expo.dev/@cs148-fitnessapp/FitnessApp?serviceType=classic&distribution=expo-go
- Use the app.
Functionality
TODO: Write usage instructions. Structuring it as a walkthrough can help structure this section, and showcase your features.
- The first screen that appears is the log in page. If you are creating an account for the first time, input an email and password and click register. If you already have an account, then input your account information and click sign in.
- Upon signing in, you will enter the workouts page. This page tracks all the workout that user cycles through for the week.
- Here you can create custom workouts and specify the number of reps, sets, weight, and type of exercise you want to do for the workout. To create a workout, click the plus button in the upper right hand corner and input the title of the workout, the number of sets, and the number of reps per set. Then click the green button labeled ‘Add Exercise’ below to add the exercise to the workout. Continue adding exercises until finished and click the button labeled ‘Add Workout’ in the bottom right corner to finish adding the exercises and go back to the Workout page.
- You can click on a specific workout to open up the progress page. The progress page is where the user can track the progress of their workout. Each exercise has a series of buttons that correspond to the number of sets for that exercise. To complete a set, the user clicks a button. Finally once, all the sets of the exercises and completed, the user can click the finished workout button to go back to the home page.
- The user can also navigate to the bottom of the page and lick on Nutrition in order to track their meals for the day. To create a new meal, click the plus button in the upper right corner and input the nutritional information (protein, carbs, fat) from your meal. Now, the meal should be updated to the list of meal on the nutrition page with key information displayed. It also correspondingly updates the nutritional information in the form of a progress bar on the Macros page.
- Lastly, when finished with tracking a workout or the nutritional information, the user can opt to sign out.
Known Problems
- No known problems as of right now. Any potential problems are due to certain functionality not being implemented yet.