- featMarkdown variants, content negotiation, bot-visit measurement
- featNative-feel CSS pass
- featPublic changelog page and header link
- featCustomer Zero - publish owner's live training log
- featAdd "What RepSheet isn't" block beside the benefit cards
- featAuto-log completed workouts on opt-in
- featOAuth connect flow + per-user token storage
- featThe credit on the landing page
- featDate-gate the Uneed launch badge for Sept 10-12
- featAdd the hand-entry promise to the formats FAQ answer
- featThe credit on the landing page
- featAdd Wind-Down Breathing as a second 10-minute session type
- fixLengthen breath phase cues so the inhale is feelable on Android
- fixApp icons refresh on installed devices
- perfFaster workout parsing
- fixDemo workouts only use weights the picker can actually produce, and the tablet card is centred
- featRe-shoot the session carousel still and promote it to slide 2
- featSelect the bodyweight columns on history and volume
- featCount bodyweight sets toward volume
- fixStop throwing away bodyweight on save
- featPut 8 and 12 on the weight wheel, stack the nudge on mobile
- fixOne header on every public page, and no theme flash between them
- featQuiet the field for the FAQ, and even up the footer
- fixThe credit on the landing page is clickable again
- fixOne CTA pill at one size, short label on phones
- featKeep the landing page a landing page when signed in
- fixThe rep picker, the upload scroll, and the credit on the landing page no longer stick
- featName the brand on the pages, not in the header
- featBring the public pages into the landing page's visual world
- fixA stored set is completed or skipped, never neither
- featPick duration on minutes + seconds wheels
- featDuration is a real field, with its own thumb wheel
- fixGive tablets the phone layout, and unpin the breath counter
- featRetire the dumbbell from every exported asset
- featDrifting wordmark in the footer, and a readable return ramp
- fixOne definition of "visible" in the scroll reveal
- fixOne FAQ answer open at a time, and pass AA on all of them
- fixLanding page animations no longer skip on first scroll
- featLanding sections reveal one at a time, with their own pace
- featTally mark replaces the dumbbell as the logo
- featViolet field with a glow, wider return ramp
- featTally-mark background texture, bidirectional reveals
- featScroll cue stays anchored, the field draws cleanly with each stroke
- fixLead-in before the first cross-out, longer beat between reps
- featThe wordmark fills with the scrolling colour field
- fixRestore mobile header nav on public pages, centre FAQ answers on open
- featBreathe: guided recovery breathing sessions
- fixHold a screen wake lock while a workout timer runs
- fixBare squats/lunges are not forced to the loaded lift
- fixEmailed sign-in code so installed apps can authenticate
- featAccent color cycling via logo tap + accent-colored hero strike
- fixPage transitions feel smooth when you move between public pages
- featFloating rest pill breathes at recovery tempo while running
- featMove-up nudge judges the last session against the current prescription
- fixLast panel no longer brands unfilled sets "skipped"
- fixSaving a bodyweight set no longer fails validation
- fixLonger placeholders fit the rep picker without clipping
- featFinish the rep/weight scroll wheel and define where it opens
- fixFull-bleed opaque dumbbell home-screen icons
- fixConsistent press feel + hand cursor on every button, app-wide
- fixPreserve source 'Max' reps instead of rewriting to 'AMRAP'
- fixNudge demo video down so the RepSheet wordmark clears the dynamic island
- featHero says 'No more spreadsheets.', gym-built benefit card, 3-day-trial CTA, app-wide button press pop
- fixStop cropping the demo video; unify phone mockup
- featReplace HeroSteps with a muted looping product-demo video
- fixPolish the upload flow and demo video
- featShorter dates on the volume chart
- featToggle the Reference weight between suggested and previous in the move-up banner
- featOne-tap complete-target button on each set row
- featSession recap in the completed-workout share text
- featShow selected-image thumbnail in uploader before parse
- fixClassify parse errors and never hang the spinner
- fixProgress bar uses the ink color, not the purple accent
- fixSnap move-up suggestion to plate-friendly ladder
- featAdd Manage billing button for subscribed users
- featIn-app contact form at /contact
- featAdd Terms of Service page at /terms
- featAdd Privacy Policy page at /privacy
- featHero copy rewrite with measured "20 seconds" claim
- fixPurple share card for programs
- featRebrand to one-word RepSheet
- featSlide-4 image + wiggling flip-card hint
- fixMake the RPE info tappable on mobile
- featLogger polish: prescription descriptor, first-time target, auto-scroll to Finish, swap/skip fixes
- featCarousel mobile polish, hero copy, restore in-session swap
- featMobile-first polish for logger, nav, dashboard, and landing
- featMobile vertical scroll-reveal hero
- featSharpen hero headline + subcopy
- featViolet brand accent on the primary token
- featFooter as a strong, shareable close
- featHero step diagram, mobile menu, footer + nav polish
- featSign-up page + Start tracking CTA + sticky header
- featLanding page redesign
- fixHero Get Started button signs you in with Google
- featAutosave workouts as drafts with resume and Complete button
- featShare program progress with AI
- featAdd /move free movement timer
- featMove-up nudge improvements + missed workout catch-up link
- featLast-workout mini charts on progress page + swap bug fix
- fixNext workout card clickable, program dot color, rest/weeks edit guards
- featNudge weight bump when previous session hit top reps at sub-8 RPE
- fixTimer no longer fires twice; current-set highlight and pause-to-record
- featAdd next workout preview card to dashboard
- featShow previous workout reference when logging
- featLanding page share preview image
- featShare completed workout to X with stats drop and total volume reps
- featPublic shareable program links with image preview
- featWorkout volume badge and dedicated per-set volume breakdown page
- featCount down duration timer from the high end of the range
- featNavigation guard dialog for dirty program edits with bulk save and discard
- featWarn on unsaved workout logger changes with save or discard dialog
- featHaptic feedback on set completion and rest timer done with iOS Safari support
- featIn-app rest and duration timers with 90s default rest and range parsing
- featShow link to existing clone instead of clone button when revisiting source program
- featShow program quota on dashboard for starter users
- fixUpdate community programs feature description on billing page
- featActive programs, community programs, duration estimation, parser fixes
- fixRemove forced camera capture, allow file picker on mobile
- fixError handling for upload/parse, accept all image types
- fixMobile camera support, subscription gate, fresh workout form
- featGate all app routes behind active subscription
- featHighlight active nav link in header
- fixCorrect X handle to dividend_solo
- fixMobile responsive header, dashboard, and chart
- featInstall RepSheet as an app on your phone
- featAdd back-to-program link on workout log page
- featEdit program (name, weeks, rest periods), delete program
- featQuality-of-life improvements and chart fixes
- featAdd dashboard stats, progress charts, nav links, fix redirect
- featAdd workout logging with RPE tooltip
- featAdd screenshot upload, AI parsing, and program creation
- featInitial project setup with landing page