Inspiration Building a consistent fitness habit is tough, and doing it alone is even harder. We realized that most fitness apps are either purely data-driven logbooks or generic social media platforms. We wanted to bridge this gap. Our inspiration was to create a unified ecosystem where the discipline of tracking every set and rep meets the motivational power of a supportive community. We wanted users to not only see their progress in numbers but also feel the encouragement of their friends.

What it does Gym Social is a comprehensive, bilingual (English and Vietnamese) fitness companion that combines workout tracking with social engagement.

Social & Motivation (Home): Users can track their weekly and monthly workout streaks, scroll through a "Discover" feed to see friends' posts, and interact via likes and comments.

Workout Management: Users can choose from famous, classic workout plans or build custom routines from scratch (with strict validation to ensure no routine is left empty).

Visual Progress (Profile): Beyond standard calendars and statistics, the app features an interactive 3D Body Model that visually highlights the specific muscle groups a user has targeted over the month.

Smart Notifications: The app actively nudges users to keep their streak alive, celebrates personal records, and alerts them when friends post new updates.

How we built it To ensure a seamless experience across both Android and iOS, we built the front-end using a cross-platform framework.

UI/UX: We implemented a responsive design that dynamically adapts to different screen sizes and includes a fully integrated toggle for Light and Dark modes.

Localization: We built a robust internationalization (i18n) system to allow instant switching between Vietnamese and English.

Database & Backend: We structured our database to efficiently handle relational data—connecting user profiles, workout routines, exercise logs, and social interactions (friend lists, posts, likes, and comments) in real-time.

Challenges we ran into The 3D Body Model: Translating raw exercise data (sets, reps, and specific exercises) into a visual heat map on a 3D anatomical model required complex logic and data mapping.

Data Validation: Designing the workout builder to be flexible yet structured was tricky. We had to implement strict rules so users couldn't accidentally save empty workout plans or routines without exercises, which would break the tracking logic.

State Management: Keeping the UI perfectly synced—especially when switching between Dark/Light mode and languages while simultaneously loading social feeds and workout timers—required careful state management to prevent system crashes.

Accomplishments that we're proud of Successfully blending a hardcore workout tracker with a smooth, intuitive social feed.

Bringing the 3D Body Model to life. It is incredibly rewarding to see your targeted muscles light up after a month of hard work, and we are proud of how visually engaging this feature turned out.

Achieving a flawless, bug-free responsive design that looks native on both Android and iOS devices.

What we learned Community Drives Consistency: We learned that adding simple social features, like streak tracking and friend notifications, drastically changes how users interact with fitness data. It makes the experience less about "chores" and more about "community."

UX is in the Details: Features like seamless dark mode toggling and bilingual support are not just "extras"—they are essential for creating an app that feels personal and comfortable for the user to use every single day.

What's next for Gym social Expanded Workout Library: We plan to partner with real personal trainers to add a wider variety of verified, classic workout plans to the platform.

Enhanced Social Features: We want to introduce "Group Challenges" where friends can compete together for the highest weekly streak or total volume lifted.

Advanced Analytics: Integrating wearable device support (like Apple Watch or Garmin) to automatically pull in heart rate and calorie data to complement our existing manual tracking.

Built With

Share this project:

Updates

Submission history