Current version: v.13b971
Aug 29, 2026
Start from something that already works. There are ready-made programs and sessions to pick from, you can save anything you've built as your own template, and you can publish it if you want other people to train with it. Dropping a template session into a phase updates your calendar straight away and costs no AI credits — it comes from the template, not from the model. Templates are snapshots: editing the original never changes the copy someone else took.
Connect Garmin Connect once and your sessions arrive the moment the watch syncs — pushed, not polled, so there's no sync button to remember. The cardio and strength workouts the AI planned go the other way, onto Fenix, Forerunner and Edge. Sleep, body battery and recovery feed the next block it writes.
Some Intervals.icu sessions had been imported under two different keys and ended up in your history twice, crowding real workouts out of what the AI reads. Those duplicates are gone and can't come back. The weekly summary was also reporting zero cardio sessions for everyone — it was looking for a label nothing ever wrote. Both are fixed, and your cardio now counts.
$34.90 for three months, or $104.70 a year — twelve months for the price of nine. We stopped selling a single month because one month is one training block, and the part that makes phase.fitness worth having happens between blocks, when the AI reads what you actually lifted and writes the next one from it. Free stays free, and you can still cancel any time.
Regenerating a phase used to leave the old gym sessions behind, so a two-session week could quietly become four. Ungenerated phases no longer claim to be "in progress", the 80% rule before generating the next phase is back on both screens — with a clear way to override it — and adding or removing a day now asks first and tells you what it costs.
Aug 29, 2026
phase.fitness is now installable as a PWA — a web app you add to your home screen, not a native app from a store. It opens full-screen, keeps you signed in, and shows a real offline page instead of a browser error when the signal drops. Add it from Safari's Share menu on iPhone, or from Chrome's install prompt on Android. We're not planning a native app: you plan a training block once or twice a week, and that rhythm doesn't justify a download and a fortnightly update.
Signing in now lands on Today — today's session, the week at a glance, and your active phase — instead of the wide dashboard. Opening a routine from Today takes you to the phase view, which is now also reachable from any program's Phases tab. "Open calendar" opens the calendar, and everything that used to say "plan" now says "program".
Workout tables now use the full width instead of sitting inside four nested borders, sets collapse per exercise, and the tab bar sits against the top of the screen. One user bar instead of two. No page scrolls sideways at 375px any more — and a test now fails the build if one starts to.
Your screen stays awake while you train, and the rest timer plays a sound when it ends — so the phone can sit on the bench between sets.
Exercises now carry video and image previews — calisthenics included — shown in the catalog and inside the player, so you can check a movement without leaving the app.
Report bugs, use Pro free. Clear terms, a welcome email that explains how it works, a short structured form at the start and one a month, and a limited number of spots. Up to six months of Pro, renewable for exceptional contributions.
Every API endpoint is now protected by default rather than by listing them one by one. Two generations started at the same moment used to be charged as one — now the database does the counting. The AI model behind each feature is configurable without a deploy, and every model in use can be tested from one place.
Aug 29, 2026
Connect Liftosaur as your strength source. Phase pushes each training phase to Liftosaur as a ready-to-run program — with target weights seeded from your estimated 1RM — and pulls your logged workouts back into your history, calendar, and analytics. Exercises with no Liftosaur equivalent are skipped rather than mis-substituted.
Every logged workout now shows how much of the plan you actually completed — done-vs-planned reps and a completion %, with a Skipped or partial badge per exercise. Analytics tracks your average completion across recent sessions. Works across all strength sources.
Long-running operations — program generation, phase refinement, syncs — now run in the background with a live progress dock. Navigate away freely; the dock keeps the result with a link straight to it when it's done.
Program generation now builds each training day in parallel, so big plans are faster and no longer time out. After you create a program, its first phase is generated automatically in the background.
Workout times now display in your local timezone, and a range of sync and UI rough edges were smoothed out.
Aug 29, 2026
Workouts from Hevy, Strava, and Intervals.icu now live in a single canonical feed. Analytics, the calendar, and the AI all read from the same place, so duplicates between providers are merged automatically and your history stays consistent across every screen.
Each integration card in Settings now has its own Sync Now and Re-sync history buttons. Sync Now pulls only what's new since the last sync; Re-sync history re-imports up to 5 years and refreshes the metrics on existing activities.
Connecting Strava, Hevy, or Intervals.icu now kicks off a full historic import automatically — no extra button to press. New activities continue to sync incrementally afterwards.
The Intervals.icu card has dedicated Sync wellness and Re-sync wellness history buttons. HRV, sleep, RHR, and readiness can now be pulled on demand in addition to the nightly cron — useful when you connect mid-week or want to refresh after a missed night.
When the same ride or run lands in multiple providers (e.g. Strava and Intervals.icu), Phase now picks the higher-priority source for matching against your program. Defaults are sensible (Intervals.icu for rich cardio detail, Hevy for strength) but you can override them in Settings.
Activity analytics now default to a 90-day window with a 5-year option for deep history. Empty states explain what's missing instead of just showing a blank chart. Strength queries route correctly through the Hevy detail tables again after the canonical-table migration.
Disconnecting an integration now properly clears its sync state — your canonical activities stay in the database (so analytics keep working) while the orchestrator stops trying to pull from a provider you've unhooked. Reconnecting later picks up from scratch with a fresh full backfill.
Aug 29, 2026
Add structured warm-up, mobility, and muscle activation blocks before your main workout. Choose from 13 pre-workout templates across categories like Dynamic Flexibility, Muscle Activation, and General Warm-Up.
Add cool-down, stretching, core finishers, and conditioning blocks after your main workout. 16 post-workout templates including Core Blast, Static Stretching, and EMOM Finishers.
Routines are now visually organized into Pre-Workout (orange), Main Workout (grey), and Post-Workout (blue) sections — each collapsible with exercise counts. Add, remove, and replace blocks with one click.
Aug 29, 2026
Completely new dashboard layout with training stats, wellness metrics, AI credits overview, connected integrations status, and quick actions — everything you need in one view.
New 4-step onboarding flow for new users: connect your tools (Strava, Hevy, Intervals.icu), complete your athlete profile, generate your AI profile, and create your first program — all guided step by step.
Programs are now organized in 4 tabs: Overview (phases & routines), Calendar (schedule & workload visualization), Phases (detail view with completion tracking), and Insights (AI coach suggestions).
The calendar tab now shows weekly volume bars visualizing your planned training intensity across phases. Color-coded by phase with progressive overload ramps — taller bars mean harder weeks, shorter bars mean deload.
Import completed cardio workouts from Intervals.icu directly into your training log. Heart rate zones, intervals, and session data flow into your analytics automatically for a complete training picture.
New Strength tab with estimated 1RMs, volume by muscle group, weekly volume trends, and RPE distribution. Activity tab with unified feed, heart rate trends, sport breakdown, and calories — combining Strava, Hevy, and Intervals.icu.
Upgraded Next.js to 15.3.6 for CVE-2025-66478. Hardened API endpoints. Calendar refactored for client-side rendering with zero database queries for volume visualization.
Aug 29, 2026
Open an activity from Analytics and inspect heart rate zones, timeline data, intervals, and laps from the same detail page. Intervals.icu activity IDs are now handled more reliably across cached data and direct API fetches.
The Analytics activity list now includes cached Intervals.icu sessions while reducing duplicate entries when the same workout also exists in connected cardio sources.
Analytics now better reflects Intervals.icu-derived cardio context, making it easier to review session structure, training load context, and heart rate distribution in one place.
Aug 29, 2026
AI now generates structured cardio workouts — running, cycling, swimming, and rowing — with intervals, heart rate zones, and duration targets. Cardio routines appear alongside strength routines in your program, with a dedicated card view and inline editor.
Every exercise now has automatic week-over-week progression. Sets, reps, and load adjust based on your actual performance — with RPE-based adjustments for compounds and rep-based progression for isolation work. Deload weeks are calculated automatically. No AI credits used.
Push cardio routines to Intervals.icu for Apple Watch execution. Connect your account in Settings, then sync cardio workouts with one click from the program page. Workouts appear in your Intervals.icu calendar with structured intervals and zones.
Track HRV, resting heart rate, sleep quality, and body weight on your dashboard. Wellness data syncs daily from Intervals.icu and feeds into the AI context — your training load adjusts automatically based on recovery signals.
Mid February
A new AI-powered analysis of your imported training data from Strava and Hevy. The AI reads your workout history and generates a comprehensive athlete profile — sport classification, training frequency, estimated 1RMs, cardio metrics, and key insights. Available on your dashboard after connecting Strava or Hevy.
The AI Athlete Profile is automatically injected into all AI generation prompts — program creation, routine refinement, and workload adjustments now understand your full training background, not just your manual profile.
Completely redesigned workload adjustment: live spinner during processing, then a detailed result screen showing exactly what changed — per-exercise before/after comparison (sets, load%, RPE) and total working sets delta. Six preset options with percentage inputs and validation. Resilient polling that survives network glitches.
Reorganized dashboard layout. Tutorial video moved to the User Guide page. AI Intelligence section expanded with 5-layer context explanation. Cleaner card arrangement with Programs, Credits, AI Profile, and Sync status.
Early February
Routine actions (Refine, Regen, Filters, Delete) are now displayed as a labeled action bar below each routine title. Bigger icons with text labels for clarity on both mobile and desktop. Rename pencil icon stays inline with the title.
Activate, Sync, Notebook, and Export buttons now show as vertical icon+label mini-buttons with bigger touch targets. No more tiny icons on mobile.
The workout table now fits on mobile screens without horizontal scrolling. Narrower inputs, shorter column headers, and compact padding in edit mode.
Program cards now show the delete button always visible (no more double-click). The program creation prompt area is taller and auto-resizes to fit your text.
Early February
Select injury zones (Lower Back, Shoulder, Knee, Elbow, Wrist, Hip) and the AI automatically excludes risky exercises from your workout plans. Each zone maps to curated exercise patterns matched against the full exercise catalog.
Each routine can now have its own injury exclusions, equipment, and muscle group constraints — independent from the program defaults. Fine-tune exactly what the AI can use for each training day.
All constraints (equipment, muscles, injuries) now live in one place on the program. The training notebook shows them as a read-only summary, always in sync. Removed legacy text-based constraint parsing for a cleaner, more reliable system.
Mid January
Your AI coach now remembers your training sessions and learns from your progress. After each workout, insights are automatically extracted and saved to help provide better recommendations over time.
Replaced old browser alerts with beautiful toast notifications. Messages are now less intrusive and look better across all devices.
Fixed various issues with program generation, phase renaming, and Hevy sync. Improved overall app stability and performance.
Holiday updates
Introduced RPE (Rate of Perceived Exertion) tracking and e1RM calculations. Your workouts now adapt based on how hard each set feels, making training more intelligent and personalized.
Full integration with Hevy app for seamless workout syncing. Import your training history and sync new workouts automatically.
For support or feature requests, contact us at
hello@phase.fitness