Project • CPSC 210

A fitness app built in Java Swing

FitHub is a desktop fitness app we built for a software development course. It started in the console and ended as a Java Swing app with a splash screen, user profiles, planners, and JSON saves.

I wanted it to feel like a real product. The flows are simple, saving works every time, and the code is structured so new features can be added without rewrites.

  • • Java Swing UI with custom layouts.
  • • Workout planner and weekly meal planner.
  • • JSON save/load for all data.
  • • Built and tested over the full term.
FitHub workout planner UI
Workout plannerhover for details

Workout planner

Weekly split view with days across the top and per-day exercises underneath. Built for quick scanning rather than clicking through dialogs.

FitHub meal planner UI
Meal plannerhover for details

Meal planner

7×3 grid for breakfast, lunch, dinner. Each cell opens a details view where meals can be swapped and macros inspected.

FitHub workout statistics
Workout statshover for details

Workout stats

Volume and frequency over the week: see which days are overloaded and how many sets each muscle group is getting.

FitHub diet statistics
Diet statshover for details

Diet stats

Macro + calorie breakdown across the week so meal changes show up as trends instead of one-off numbers.

Workout planner

Create or generate weekly workout splits, track exercises per day, and save your routine so it’s always there when you reopen the app.

Meal planner

A 7×3 grid for breakfast, lunch, dinner. Click into any day to swap meals, view macros, and experiment with different weekly layouts.

Progress & stats

Behind the scenes, FitHub tracks volume and meal changes over time so you can see how your routine evolves instead of losing changes in memory.