Overview
Overview
Discovery gave Saint a clear argument: people are not short of skincare advice, they are short of evidence, and Saint exists to prove whether a routine is working. This proposal takes that argument into a product, updated after the call on 26 October. Blott designs the whole experience and builds it on iOS, with the waitlist website, against a backend Saint’s own team owns; Saint ports Android. Davos gets a presentation and screens on a phone; the beta opens in March; the team is planned by the hour at one rate, in dollars, with pencils down over Christmas.
01 · Since the last call
What changed on 26 October
Saint already has Swift, Kotlin and the core API in its own GitHub, and Mark and Chris are part of the development effort. Blott nails iOS; Saint’s team takes Android from the proven designs and the Swift codebase. React Native is off the table: native gives direct access to the camera and face tracking.
What Davos needs is enough screens to flip through, and a presentation to carry into the room. The beta comes later, so nothing is rushed through Christmas to hit 18 January.
Earlier is welcome but not at the cost of rushing: 1 March is good, the end of March is fine. The plan has engineering from 4 January, a beta candidate on 12 March and the cohort testing from 15 March.
Last communication around 21 or 22 December, nobody working from the 23rd, everyone back on Monday 4 January. The schedule and the fee both have that gap in them, by design.
Kilimanjaro, no signal. Everything that needs her decision is loaded before 23 December so she can turn it over the holiday; Mark is online throughout and covers the two weeks before Davos.
No UK launch until international expansion is thought through, so no GBP, no UK copy and no UK compliance work in the product. Prices in the app are dollars.
Two rounds of brand work were not usable and the engagement has ended on good terms. A naming agency may run in parallel because Saint has trademark concerns and Jeehae wants to debut a name at Davos that lasts. Two routes to a working visual baseline are set out below, with timing and cost, for a decision this week.
Jeehae asked for the figures before the call and for the pricing logic to be clear. The Estimates page is that: one rate, hours per person per month, the two brand routes, all in dollars and all adjustable in the conversation.
02 · What discovery told us
The ideas that shape what we build
Prove whether skincare is working
Of 58 participants, 27 described a product that had failed them, only 14 could say why, and none could measure their own progress. Saint closes that gap with comparable photos, a Skin Age that moves slowly and means something, and a source behind every number.
Research report, summaryStart niche, start with analysts
The first 1,000 users arrive through problem-led groups: retinoid starters, acne, under-eye, pigmentation. They are the analysts, the 27 of 58 who already do the work and will log the data Saint needs.
- One landing page and waitlist wave per niche
- A ready-made first goal on sign-up
The scan has to earn trust
About 19 people had never tried a face scanner and those who had were unimpressed. The scan theatre shows the analysis happening, and the layers shown must be the layers used.
- Guided capture by the halo, auto-capture when ready
- Mark invalid and exclude from trend
Goals are the spine
Photo, feature, goal, resolved. The user chooses up to three, each with a plan and an expectation timeline, and each goal has a finish line that comparable photos can prove.
- Insights unlock in small batches along each goal
- Resolving a feature moves Skin Age
One workbench, one rhythm
The homepage centres on the monthly halo with Skin Age in the middle. Pulses up to twice a day, a weekly streak, and reminders that back off when engagement drops rather than nagging.
- A dim day is a gap, never a reset
- Every return shows something new
Annual first, founders first
$99 a year or $14.99 a month, every user on a 30-day trial, no free tier. The founding offer is the first test: 1,000 people paying for a year before launch validates the product before most of the build is spent.
- Live founding counter, real and verifiable
- Cancel as easily as you signed up
03 · The journey
Six stages, agreed in the workshops
Niche, positioning, offer
Health not aesthetics, a journey not a quick fix, evidence behind every number. The founding tiers: lifetime to two years for one annual payment. US first.
Trust sits with people
Word of mouth first, creators who show their own tracked results, no affiliate links. A visual baseline is set in November; a full brand partner follows after Davos.
The waitlist and the counter
Join with a concern and a routine, see the places left in the current tier, share an invite link, move up when friends join. Live ahead of Davos so every conversation there has somewhere to send people.
Proof of progress
Screenshots that tell the story in order: layers, heatmap, Skin Age, halo. The Davos screens are the first cut of the listing.
Sign up, scan, goals, paywall
Pre-filled sign-up, guided capture, the scan theatre, a Skin Age preview, the trial paywall, up to three goals. These are the screens Davos sees, and the first thing the beta tests.
Halo, pulses, insights
The homepage workbench, morning and night pulses, the weekly streak, routine builder, connected apps, and insights that unlock as each goal progresses.
04 · Who builds what
Two teams, one codebase
| Layer | Owner | What it covers | Where the two meet |
|---|---|---|---|
| Product designFlows, UI, motion, design system | Blott | Every screen on iOS and the website, designed once so Android can mirror it. A tokenised design system, so a later brand partner can reskin without redesign, and a wordmark built as a swappable component in case the name changes. Usability round with waitlist members before build locks. | Visual baseline from the brand route Saint chooses this week |
| Visual baselineColour, type, photography, logo start | Blott, optional | A bare-bones visual identity in three weeks so product design starts with colours and typography rather than grey boxes. Two routes, priced on the Estimates page. | Jeehae’s direction: serif and sans serif together, a quiet adviser rather than a coach |
| iOS appSwift, SwiftUI, ARKit, StoreKit 2, HealthKit | Blott | Native build of every iOS story in Saint’s existing Swift project: face tracking and guided capture on device, the scan theatre, subscriptions through Apple, Apple Health, push, deep links, accessibility, TestFlight and store submission. Documented so the Android port is a translation, not an investigation. | Results API for the scan; entitlements from store webhooks |
| Waitlist websiteWeb frontend, headless CMS | Blott | Landing page, join flow, founding counter, invite links, consent, niche landing pages, and the founding checkout through Stripe with Apple Pay and Google Pay. US copy and dollar prices only. | Waitlist, referral and entitlement endpoints from Saint |
| Android appKotlin, Jetpack Compose | Saint | Ported by Mark and Chris from the designs and the Swift build, in Saint’s Kotlin project. Blott hands over a design file with platform notes and reviews the port at Saint’s request. | Same API contract; Health Connect and Play Billing in place of HealthKit and StoreKit |
| Backend and platformThe core API | Saint | User, consent and entitlement models; encrypted photo storage and retention; integration sync; notifications service; the web app that holds the endpoints and is eventually deprecated as a frontend. | Blott provides the frontend’s contract and test fixtures |
| Scan model and insightsML, built or licensed | Saint | Features and Skin Age from a photo, accuracy and bias testing across skin tones, shelf-photo product recognition, the conflict rules engine and the insight generator. | The single biggest dependency on the beta date; see the critical path |
| Name and brand partnerNaming agency, brand sprint after Davos | Saint | Trademark-cleared name through the naming agency, in parallel with design. A full brand partner from February, then a reskin sprint using the design tokens. | The design never hard-codes the name or the palette |
05 · The brand question
Two routes to a visual baseline, for a decision this week
Emanuel, Blott’s brand designer, with Jeehae
A separate pair of eyes from the people designing the app. Emanuel runs Blott’s own brand and has worked on technology brands for three to four years with us. Jeehae’s direction goes in; a short guideline comes out: colour, typography, use of photography and the start of a logo.
- Three weeks: Monday 2 to Friday 20 November
- Two working sessions with Jeehae, one review
- 120 hours in November, on the Estimates page
- Product design starts in parallel and adopts the baseline in week three
- Emmanuel also builds the Davos presentation in January, whichever route
- Portfolio to follow from Ben before the decision
Zandre and Alina, inside product design
The product designers set colours and type as they design the first screens, and the brand evolves with the app. Faster to start and nothing extra to pay, but quick and dirty: it will not be as polished as a dedicated pass, and the designers are thinking about flows and visual identity at the same time.
- No extra hours or time
- Visual decisions made screen by screen
- Best if the naming agency is likely to change the name anyway
- Less polish before Davos
A designer from Jeehae’s network
Jeehae has people in New York at a similar level and may ask around. Worth comparing portfolios and cost. The constraint is time: if an external designer crosses the three-week mark, product design is working without a baseline, so the brief needs to be the same bare-bones guideline, not a full identity.
- Compare portfolio, availability and cost against Route 1
- Same three-week brief
- Onboarding a stranger in week one is the risk
06 · What the beta has to deliver
Thirty days to a first insight
A Skin Age and a reason to trust it
Guided capture, the scan theatre, a heatmap the user can tap, and a plain-language explanation of what moved the number. The preview lands before the paywall.
One goal with a plan
Features become goals, ordered by what is most workable. The user picks up to three, each with actives to try, conflicts to remove and an expectation timeline such as redness rising in week one.
A stable baseline
Morning and night pulses, comparable by design, with invalid scans excluded from the trend. Skin Age refreshes per photo but the trend is reported weekly.
A first insight they did not expect
A routine built from a shelf photo with conflicts flagged, and the first insight batch landing inside the trial: a finding the user could not have reached alone. This is the full MVP scope, which is why it is recommended.
07 · Decisions for Saint
What we need settled to start on 2 November
Beta on iOS to March, full MVP to May, or everything, from the Estimates page. Each scope is more months of the same team and Saint can stop at any month end. Confirmed by Friday, the team starts on Monday.
Emanuel, the product designers, or someone from Jeehae’s network, against the same three-week brief. Emanuel’s portfolio comes from Ben before the call; Jeehae may put the brief to her network in parallel.
If Saint engages the agency, the naming sprint runs alongside design and the design carries a placeholder wordmark until the name is cleared. If not, Saint stays and the trademark question is parked until after Davos.
Features and Skin Age from a photo are Saint’s backend item, and the results API is on the critical path for the beta. If licensing, the vendor’s API shape decides our contract; if building, we need a stub by December and real results by mid-February.
Skin Age stays a wellness measure, never a diagnosis, inside the FDA’s general wellness guidance. Face photos are biometric data under state laws such as Illinois BIPA, so consent wording and retention are settled before the scan screens are designed.
Blott commits to Saint’s GitHub from the first week, in the Swift project Mark has set up, with pull requests reviewed both ways. Saint owns every line throughout, so there is no handover at the end, only a port Saint’s team already understands.
Now that the beta is March rather than January, there is time to start with an off-the-shelf certified lens branded for Saint. The app is built so the capture mode is switchable when the lens arrives, which is why lens mode sits in the Everything scope.
MVP scope
Every story from discovery, grouped by epic and sorted into three scopes. Beta is what the founding cohort needs for the March beta on iOS. Full MVP adds the routine builder, connected apps and the insight loop. Everything adds the pieces that depend on devices, imports or a legal decision. Android stories now belong to Saint, who port from the iOS build. Filter by owner to see Blott’s work against Saint’s.
01 · Epics and stories
Ten epics, 114 stories
02 · Out of the MVP
Agreed to wait
The hand-off when an insight points to a prescription or a reaction raises a safety question. Needs registered prescribers and a clinical safety protocol; Nolla is the model and the price benchmark.
Talking to Saint’s AI while doing the routine. Attractive, but it sits on top of the loop rather than inside it.
The lens attachment ships first. The other two devices wait for certification and a proven capture pipeline.
Sharing between friends, cycle and nutrition apps, blood testing, Garmin and Strava, and the public outcome rankings on the website all follow once there is data to share.
Estimates
A plan of hours per person per month that follows the work: brand and definition in November, design and the website in December, the Davos presentation and the start of the iOS build in January, engineering through to the March beta. The grid is the whole pricing logic. Change any cell and the figure updates. Nothing is planned for the Christmas break, so nothing is charged for it.
01 · The team, month by month
Six people, planned by the hour
02 · Brand, two routes
The visual baseline, priced
A bare-bones visual identity
Colour, typography, use of photography and the start of a logo, as a short guideline the product designers adopt in week three.
- Two working sessions with Jeehae, one review
- Tokenised for a later reskin
- Wordmark as a swappable component
Zandre and Alina set it as they go
Colours and type decided screen by screen as the first flows are designed. Faster to start, less polished before Davos, and the brand evolves with the app.
- Inside the designers’ planned hours
- Same tokens, same swappable wordmark
- Designers split between flows and identity
The Davos presentation
Emmanuel builds the presentation from the designed screens: the deck Jeehae and Mark carry into the room, with the first-time experience shown screen by screen.
- Reviewed with Mark while Jeehae is away
- Ready Friday 15 January
03 · Assumptions
What the numbers rest on
The API contract is agreed in week three and endpoints in Saint’s core API arrive in the order the sprints need them, with a stubbed results API by early December. The plan assumes we are integrating, not waiting.
Each epic is designed once with platform notes and built on iOS in Saint’s Swift project. Mark and Chris port to Kotlin from the design file and the Swift code; Blott reviews the port when asked but does not build it.
Explainers, goal plans, consent wording and the claims boundary come from Saint and its clinical advisor. We write interface copy in US English with dollar prices; we do not write the clinical content.
Strategy, delivery and QA sit inside the product manager’s hours. Scott and Ben stay close as account leads and are not in the grid.
ARKit face tracking on iOS and ML Kit on Android for the guided capture; the scan model itself runs on Saint’s side. If capture needs a custom model, that is a separate item.
Pencils down from Wednesday 23 December to Sunday 3 January, not scheduled and not charged. Last working communication on Tuesday 22 December.
Timeline
The plan follows the hours. November is brand, definition and the design system; December is UI design and the waitlist website, stopping on 22 December; January is the Davos presentation, the last of the design and the start of the iOS build; February and March are engineering, with a beta candidate on Friday 12 March and the founding cohort testing from Monday 15 March, inside the window Jeehae gave. Saint’s Android port and a brand partner follow after Davos.
01 · Schedule
November to the March beta, and the loop after it
02 · Milestones
The dates that matter
| When | What | Owner |
|---|---|---|
| Tue 27 Oct | Numbers call, 7:30 New York. Hours, rate and brand route talked through | Both |
| Fri 30 Oct | Scope and brand route confirmed; Emmanuel’s portfolio reviewed | Saint |
| Mon 2 Nov | Kickoff. Access to Saint’s GitHub, Swift project and core API; working rhythm set | Both |
| Fri 13 Nov | Naming agency go or no; claims boundary and US consent wording settled | Saint |
| Fri 20 Nov | Visual baseline, design system and core flows signed off; API contract v1 agreed | Both |
| w/c 30 Nov | Waitlist, referral and checkout endpoints in test for the website build | Saint |
| Fri 18 Dec | First-time experience designed; clickable prototype v1. Jeehae’s holiday review pack goes with it | Blott |
| Tue 22 Dec | Last working day. Waitlist build complete; pencils down until Monday 4 January | Both |
| Mon 4 Jan | Back. Jeehae’s review answered; Mark is the decision-maker until the 18th. iOS build starts; auth, profile and consent endpoints and a stubbed results API in test | Both |
| Fri 15 Jan | Davos presentation ready; waitlist website live with the founding counter | Blott |
| Mon 18 Jan | Davos. The deck and screens on a phone | Both |
| Fri 29 Jan | Beta scope fully designed; usability round done; platform notes for the Android port handed over | Blott |
| w/c 8 Feb | Real scan results from the model, test data across skin tones | Saint |
| Fri 12 Mar | Beta candidate on iOS, feature complete for the beta scope | Blott |
| Mon 15 Mar | Beta opens with the founding cohort on TestFlight | Both |
| Fri 16 Apr | Beta closes; go or no on public launch | Saint |
| Fri 28 May | Full MVP on iOS: routine builder, integrations, insight cards, streak; App Store submission | Blott |
03 · The team
Six people, inside Saint’s sprint calendar and repo
| Who | What they do | When | Side |
|---|---|---|---|
| RohithProduct manager | Runs two-week sprints on a calendar shared with Mark and Chris, owns the API contract from Blott’s side, tests across the device matrix, manages TestFlight and the App Store submission. Loads Jeehae’s holiday review pack before 22 December. | November to March, 80 hours a month | Blott |
| AlinaUI design | Design system in November, then the first-time experience and the loop, one epic ahead of the build. Design QA against every iOS build and the design file with platform notes for Saint’s Android port. | November to January | Blott |
| ZandreUI design | Flows and the clickable prototype, the usability round with waitlist members, and the second pair of eyes on every screen. | November to January | Blott |
| EmmanuelBrand design | Route 1: the visual baseline with Jeehae in November. In every case: the Davos presentation in the first two weeks of January, reviewed with Mark. | November, then 4 to 15 January | Blott |
| DanisWebsite | Builds the waitlist website and the founding checkout against Saint’s endpoints, from Alina’s designs. | December | Blott |
| YushaniOS engineering | Builds the beta scope in Saint’s Swift project from 4 January, epic by epic, with pull requests reviewed by Mark and Chris. Documents as they go so the Kotlin port is a translation. | January to March, 160 hours a month | Blott |
| Scott and BenAccount leads | Stay close to Jeehae and Mark on scope, priorities and the commercial relationship. Not in the hours. | Throughout | Blott |
| JeehaeProduct owner | Owns the brand route, the naming agency, the claims boundary and the founding cohort. Offline 4 to 16 January; everything needing her call is loaded before Christmas. | Throughout, except 4 to 16 Jan | Saint |
| Mark and ChrisEngineering, backend and Android | Own the core API and its endpoints, the scan model build or licence, the Kotlin project and the Android port from the iOS build. Review Blott’s pull requests. Mark covers decisions while Jeehae is away. | Same sprint calendar | Saint |
04 · Critical path
What holds the dates
Everything from the scan theatre to goals depends on features and Skin Age coming back from Saint’s side. The Davos prototype can run on designed results, but the beta cannot: the iOS build starts against a stub on 4 January and needs real results by the second week of February to tune the heatmap and test across skin tones. Build or license is the first technical decision.
Product design starts on 2 November either way, but if no route is chosen by Friday the first screens are grey boxes and the Davos presentation loses polish. Route 2 is the fallback that costs nothing: it just needs saying.
The designed first-time experience and prototype are delivered on 18 December so Jeehae reviews them over the holiday and answers on 4 January before she leaves. After that Mark decides, including sign-off on the Davos presentation on 15 January. Anything that cannot be decided by Mark needs to be decided before 22 December.
Blott commits to Saint’s GitHub from the first week, so access, branch rules and CI need to exist on 2 November for the website and before 4 January for iOS. The API contract is agreed by 20 November and versioned from then; endpoints that arrive late move the beta candidate.
If the naming agency changes the name in January, the wordmark component and the App Store listing change; nothing else does. If the change lands after the beta candidate, the beta runs under the old name and the public release carries the new one.
Apple Developer account in Saint’s name, Sign in with Apple, StoreKit products and RevenueCat need to exist before the paywall can be tested in February. Apple’s organisation verification alone can take two weeks, so it starts in November.