Tasteful — Segall audit

Tasteful — Segall audit (focus pass)

Lens: Ken Segall (Insanely Simple) — one job per surface, one primary action, subtract whole blocks.

Date: 2026-06-28 · Status: Round 2 shipped.


Shipped in round 1

SurfaceWasNow
Onboarding4 feature slides + photo1 welcome slide + photo (sync/offline/library folded into welcome)
Photo import prompt (onboarding)Title + subtitle + body + 3 checkmarksTitle + "Optional" + one paragraph
Photo import primerTitle + body + toggle + 3 checkmarksTitle + body + toggle only
Recommender empty (no meals)Title + explanatory paragraph + 2 buttonsTitle + 2 buttons (paragraph removed)
Recommender browse handoff1 prominent + 2 glass + search glass1 prominent + Menu for recipes/restaurants/search
Browse handoff copyLong stats paragraphOne line
Suggestion settingsWhole "How It Works" section + example bulletsOne footer on General
tasteful.to MainLandingHero wall + 5 bullets + 3 principle cards + waitlistShort hero + 3 bullets + one trust line + waitlist (principles grid removed)

Shipped in round 2

IDSurfaceWasNow
S-01AuthenticationViewHero "Sign in or create an account"; passkey + password as two sections; toggle between fields and primaryHero Decide what to eat. (returning: Welcome back); passkey path: one primary + password link in footer; create/sign-in: one primary, toggle in footer
S-02MealRecommendationView (accepted)View Recipe + Why + Change Location + Start Over (4 glass rows)One glassProminent (recipe or restaurant) + More Options Menu (why, change location, start over)
S-04RecommendationEngineSettingsView6 top-level sections; weather "How it works" bulletsGeneral first; Avoid Repeats · Context (weather + eat out) · Your Tastes (frequency + ingredients)
S-07App Store listingSubtitle onlySubtitle Decide what to eat in Connect ✅; screenshots Decide → Save → Cook still TODO (docs/runbooks/APP_STORE_SCREENSHOT_STORY.md)
S-08Transactional emailTBDRunbook: docs/runbooks/TRANSACTIONAL_EMAIL_TEMPLATES.md — one subject, one action

Segall ✅ (already simple)

SurfaceWhy
Home heroOne question: "What should I eat?"
UnderstatedLanding"Mostly a notebook for food."
PricingOne price; FAQ is honest, not tier grid
Where to Eat sheetSections serve one decision: pick restaurant or decide later
Batch delete confirmNames + permanence; one destructive action
Boot screenOne line: Decide what to eat.

Deferred (intentional)

IDSurfaceNote
S-03HomeViewHub sections OK — each row is one tap target
S-05Lab landings (/lab/*)Exploration only; Segall pass before promoting to /
S-06who-its-for-content.tsDepth page, not homepage

Segall questions (use on every new screen)

  1. What is the one job of this surface?
  2. Is there only one .glassProminent (or web primary)?
  3. Can an entire section be deleted?
  4. Are we listing capabilities when the user came for one decision?
  5. Would Apple ship this many words on a first-run screen?

Review cadence