SocialPump is a full-featured social gym workout tracker built with Flutter frontend and Java + MySQL backend (MVC Design Pattern), self-hosted using Docker and Coolify.
This project was built without using any ORM and just using basic libraries for MySQL connections (HikariCP) and the RESTful API (SparkJava). Here are some of the app's most relevant features:
Social features: Feed of workouts, follow other people, etc
Graphs: Time working out, volume (weight*reps*sets), reps, effective sets (here's a blog post explaining what that is), etc. Everything is calculated in the backend, so premium features are protected from piracy.
AI Chat with user's workouts context (Gemini, using Vertex AI)
Heatmaps of body muscles built with flutter's CustomPainter, created from a SVG file.
Caching in the frontend to prevent excessive server resource usage, for better scalability.
Broad exercise library scraped online, with GIFs and pictures of most of them
Check out the app website below. It was built with GoHugo, and all blog posts were generated using AI (Gemini).