← BACK

THE SOCIAL POWERLIFTING APP

Full-stack social fitness platform · React 19 · Supabase · Cloudflare R2 · Vercel


OVERVIEW VIDEO

~3 minute walkthrough of the app


ABOUT

A full-stack social fitness platform built from scratch for powerlifters — log training sessions, track PRs, compete on leaderboards, and follow each other's progress. Every feature was designed around how powerlifters actually train.


TECH STACK
LayerTechnology
FrontendReact 19, TypeScript, Vite, Tailwind CSS v4
UI Componentsshadcn/ui, Radix UI, Lucide React
ChartsRecharts
Backend / DBSupabase (PostgreSQL 17, Auth, Storage, Edge Functions)
Media StorageCloudflare R2
DeploymentVercel

FEATURES
  • Workout Logging — Log lifts by type (Squat, Bench, Deadlift, etc.), track sets with weight, reps & RPE, tag set types, attach photos/videos, log bodyweight.
  • Progress Tracking — Automatic PR detection with celebration animations, 1RM estimation, per-lift progress charts, volume over time, calendar view.
  • Powerlifting Meets — Record competition attempts, attach media per lift, countdown to upcoming meets, meet celebration on completion.
  • Social — Follow/unfollow lifters, like and comment on workouts, activity feed, public/private accounts, user search, in-app notifications.
  • Leaderboard — Global rankings by lift based on best 1RM or meet results.
  • Settings — Weight unit preference (lbs/kg) with automatic conversion throughout, profile customization.

MEDIA STORAGE

Photos and videos are stored in Cloudflare R2. Uploads go through a Supabase Edge Function that returns a short-lived presigned URL — the client uploads directly to R2 without routing through Supabase Storage. Deletes follow the same pattern via a second Edge Function.