Skip to content
Aidan Alsaadoun

Skye

A gym companion app: log sessions, track progression, build the habit.

Source on GitHubskyeapp.fit TypeScriptStars: 1last push last month
  • Next.js 15
  • TypeScript
  • Tailwind v4
  • Neon Postgres
  • Drizzle
  • better-auth
  • Vercel
  • Resend

What it is

A mobile-first PWA for live workout logging with autosave, reusable templates and splits, a time-boxed workout generator, history and progression stats, and a seeded library of around 75 exercises.

Why it's interesting

A complete product owned end-to-end: schema, auth, API, UI, deployment and cost. It runs in production for about a pound a month.

What I built

  • Next.js 15 App Router with strict TypeScript and Tailwind v4, designed mobile-first with PWA install for a near-native feel.
  • Relational schema on Neon Postgres via Drizzle ORM and drizzle-kit migrations: exercises, workout_templates, template_exercises, sessions with snapshotted plans, and a sets_log of weight, reps, RPE and time.
  • Email and password authentication with better-auth; deployed on Vercel with Resend powering an in-app bug-report flow that captures session context.
  • Cost-aware infrastructure: Vercel Hobby plus Neon’s free tier with autosuspend, so a single-user product costs roughly the domain fee.

Engineering concepts

  • Full-stack product ownership
  • Relational schema design
  • Authentication
  • PWA
  • Cost-aware infra