Back to projects
Thrive Engine header
Visit site
Web App

Thrive Engine

A personal training, nutrition, and recovery command center that turns WHOOP data and a self-managed calendar into one daily plan.

Overview

Thrive Engine is a daily-planning app that brings training, nutrition, recovery, and scheduling into a single dashboard. Instead of auto-generating a schedule, every calendar item, a workout, a meal, a sleep window, is added by hand for one exact date or a set of repeating weekdays, so the calendar always reflects what you actually intend to do rather than a template's guess. The Today screen pulls live recovery, sleep, and strain data from WHOOP and displays it alongside the day's schedule and a completion grade, with Day, Week, and Month calendar views for zooming out, plus a built-in AI assistant to help reason about the plan. Under the hood it's an npm-workspaces monorepo: a Next.js app that serves both the UI and the REST API, and a framework-free shared package holding every rule, type, and the typed API client, built so the same logic could power a native app later without a rewrite. It's deployed on Vercel with a hosted Supabase backend (Postgres + Auth + row-level security), and WHOOP sync runs on-demand since Vercel's Hobby plan doesn't support the cron jobs a background sync would need.

Key features

  • WHOOP-aware recovery, sleep & strain rings on a daily dashboard
  • User-managed calendar
  • Day / Week / Month calendar views with per-day completion and grading
  • AI assistant for planning, backed by OpenAI
  • Nutrition logging via USDA FoodData Central with Open Food Facts fallback
  • Read-only Google Calendar overlay on the daily/weekly views
  • Google and password sign-in via Supabase Auth with row-level security
  • Race-day countdown

Stack

Next.js 14React 18TypeScriptSupabase (Postgres, Auth, Row-Level Security)Tailwind CSSZodLuxonOpenAI APIWHOOP API (OAuth)Google Calendar API (OAuth, read-only)Web Push / VAPIDVercel

Gallery

Project image 1
Project image 2
Project image 3
Project image 4

Details

Client
Personal Project
Timeline
August 2026 - Present
Role
Developer

© 2026 · Andrew Rosenthal