This is my Mid-Term Project for Programming in Python (Section B, Spring 2025-26). It's a desktop app built using Python and customtkinter to track gym workouts, build routines, and keep a log of your progress. All user data is saved locally using JSON files, keeping things simple and standalone.
Student: Din Muhammad Rezwoan (ID: 23-51712-2)
Instructor: MD. Tanzeem Rahat
- User Authentication: Sign up with a name, email, and password. I used
bcryptto hash the passwords before saving them so plain text isn't stored. - First-Time Profile Setup: New users are prompted to fill out their fitness profile (height, weight, gender, target weight, fitness goals, preferred muscles, and optional 1-rep maxes for squat, bench, and deadlift).
- Exercise Library: Comes with a built-in list of common gym exercises. Users can also add their own custom exercises if something is missing.
- Workout Plan Builder: Create and name custom workout plans. Add exercises to them, setting the number of sets, target reps, and weights.
- Active Workout Session: Start a session from your saved plans. Tick off sets as you complete them, and easily adjust the reps or weight on the spot if they differ from the plan.
- Workout History: Once done, past sessions are saved. You can view full details of what was done that day in the history screen.
- Body Weight Tracker: Log your body weight directly from the dashboard to make sure you're on track.
Make sure you have Python 3 installed, then follow these steps:
- Clone the repository:
git clone https://github.com/Rezwoan/FitTrack.git
- Move into the project folder:
cd FitTrack - Install the required libraries (
customtkinter,bcrypt, andPillow):pip install -r requirements.txt
- Run the app:
python main.py







