Seven cards, one per onboarding step, supplied by the owner and generated from BRAND_GUIDE.md §22's own master prompt — which is the workflow that section exists to describe. They settle the direction #29 asked for, including all four steps that had no art at all. They are NOT the shipping assets, and docs/design/dist/README.md says so at the point somebody would otherwise drop them into res/drawable: - raster, against a 1.9 MB release APK and §42's ask for vector paths - titles and subtitles painted into the pixels, while the app already renders all seven through Heading(...) — used as-is every title appears twice, and baked text cannot be translated, scaled with font size, or read by TalkBack - light mode only, with dark mode inbound and a preview-pair rule that exists because dark mode was silently broken for all of Batch 01 - card 7 shows a fertile window and ovulation that the first-forecast screen deliberately withholds; on a fresh install it shows confidence Low and Today reads "Not enough history to estimate" Converted from the delivered PNGs to WebP at the original 1086x1448: same resolution, 340 KB instead of 12 MB, and the format docs/data/img already uses. Renamed from the generator's default filenames so the set reads as a sequence. #29 stays open with the assessment recorded as a comment on it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| README.md | ||
| onboarding-01-welcome.webp | ||
| onboarding-02-last-period-start.webp | ||
| onboarding-03-period-end.webp | ||
| onboarding-04-previous-history.webp | ||
| onboarding-05-privacy-promise.webp | ||
| onboarding-06-reminder-privacy.webp | ||
| onboarding-07-first-forecast.webp | ||
README.md
Onboarding concept cards
Status: Current
Owner: _null
Last reviewed: 2026-08-18
Governs: docs/design/dist/** — the onboarding concept set and what it is for
Review trigger: Any concept set added or replaced here; the onboarding artwork
in issue #29 landing in the app
These are references, not assets. Nothing in this folder ships in the APK. They are the decided direction for onboarding, drawn from
../BRAND_GUIDE.md§22's master prompt, and the vectors that eventually ship are drawn from them.
Seven cards, one per onboarding step, numbered to match the steps in
app/src/main/kotlin/dev/privacyllc/period/feature/onboarding/OnboardingScreen.kt:
| File | Step | Composable |
|---|---|---|
onboarding-01-welcome.webp |
1 | Welcome |
onboarding-02-last-period-start.webp |
2 | LastPeriod |
onboarding-03-period-end.webp |
3 | PeriodEnd |
onboarding-04-previous-history.webp |
4 | PreviousHistory |
onboarding-05-privacy-promise.webp |
5 | PrivacyPromise |
onboarding-06-reminder-privacy.webp |
6 | NotificationPrivacyStep |
onboarding-07-first-forecast.webp |
7 | FirstForecast |
Why they are not the shipping assets
Recorded here so nobody drops them into res/drawable and calls #29 done. The
full argument, with evidence, is in the comment on that issue.
- They are raster. The set is 340 KB as WebP; it was 12 MB as PNG, against a
1.9 MB release APK. §42 asks for Compose vector paths or
VectorDrawable. - The titles and subtitles are painted into the pixels, and the app already
renders all seven itself through
Heading(...). Used as-is, every title appears twice — and baked text cannot be translated, cannot scale with the user's font size, and is invisible to TalkBack. - They are light mode only.
BRAND_GUIDE.md§22 names the dark palette, and../README.mdrequires a light/dark preview pair per screen. A vector set recolours from theme tokens; a raster set has to be drawn twice. - Card 7 shows a fertile window and ovulation, which the first-forecast screen deliberately does not — on a fresh install it shows confidence Low and Today reads "Not enough history to estimate". That conflict is a product decision to settle before anything is drawn, not a detail to fix in the art.
Provenance and format
Generated from BRAND_GUIDE.md §22's master prompt, which is the workflow that
section exists to describe. Converted from the delivered PNGs to WebP at their
original 1086×1448 — same resolution, about a fortieth of the bytes, and the
same format ../../data/img/ already uses for the marks
privacyllc.dev renders.