Onboarding Setup & Permissions

After sign-up, before first Plant. Choices framed as values, not asks.

The post-sign-up moment is delicate. The Gardener has just committed to creating an account; the next thing they see shapes how DandyLine feels for the next year. Generic permission prompts ("Allow location?") would break the spell. Instead, this flow reframes every choice as a value the Gardener gets — location enables hidden Vault discovery, photos enable Seed planting, notifications keep them connected to Seeds that bloom while they're away. Calendar is explicitly NOT requested. Every screen has a clear opt-out, and nothing in this flow blocks the path to first Plant.

Concept locked 2026-05-02 · Status Copy Draft — Founder Review · Inspired by Moleskine intake
01

Why this flow exists

The Onboarding Intro (Row #4) sets tone. Sign-Up (Row #6) creates the account. This flow sits between sign-up and first Plant — it's where DandyLine gathers everything it needs to be useful, framed in a way that doesn't break the trust the Intro just built.

Four screens. Each one has a single decision. Each one is skippable (with the Gardener understanding what they're skipping). Together they take ≤90 seconds. The CTA on the final screen drops the Gardener directly into the Plant flow — the entire setup arc earns the right to the first ritual moment.

Sequence

  • Screen 1 · Persona / Intent — "What describes you best?" + intent question. Drives later personalization.
  • Screen 2 · Photos & Media — access to camera roll and capture. Required for planting.
  • Screen 3 · Location — toggle. Optional. Unlocks Roots-anchored Seeds + hidden Vault discovery.
  • Screen 4 · Notifications — granular preferences with visual examples. SMS-only transparency note.
  • Bridge · You're set — quiet beat. Hands off to Plant flow.

What this flow does NOT include

  • Calendar access — explicitly skipped. Doesn't fit the use case.
  • Contact list access — not requested at this stage. May appear later when a Gardener invites a contributor or assigns a Guardian.
  • Privacy Policy / ToS acceptance — handled at sign-up, not re-asked here.
Brief locked · 2026-05-02
02

Screen 1 · Persona & Intent

Skip
A bit about you
What brings you here?
Pick one — or more. We'll use this to shape what shows up first.
Preserving family memories
A gift for someone, later
Capturing my own life, for me
Invited by someone — just here to contribute
Just exploring
Headline (drafted)

What brings you here?

Body (drafted)

Pick one — or more. We'll use this to shape what shows up first.

Persona options (drafted, multi-select allowed)
  • Preserving family memories — surfaces Personal & Grove Vaults, family-mode prompts
  • A gift for someone, later — surfaces Milestone & Legacy Vaults, Seed Key flow
  • Capturing my own life, for me — surfaces Personal Vaults, Journey Vault templates, future-self framing
  • Invited by someone — just here to contribute — routes to the lightweight contributor path (separate flow), skips remaining setup
  • Just exploring — generic Field default, no persona-driven personalization
Why this screen

Two jobs. (1) Tells the Gardener that DandyLine has more than one use case — they're not alone in why they're here. (2) Lets us soft-prioritize Vault types they're most likely to want, without locking them into anything. Multi-select means a Gardener doesn't have to over-narrow themselves up front.

Single-question vs. two-question split
Original spec from Moleskine intake had two questions: "what describes you best" + "what are you most interested in." Folded into one here — multi-select handles both jobs without a second screen. Confirm: keep as one, or split?
Invited contributor branch
If the Gardener picks "Invited by someone," the rest of this flow can be skipped — they don't need the full permission set yet. Routing belongs in ux-invited-contributor-flow.html. Handled here only as: select that option → next screen routes to the contributor path, not Photos & Media.
03

Screen 2 · Photos & Media

Later
Capture
So you can plant photos and video.
DandyLine needs access to your camera roll and camera so you can plant Seeds from photos, video, and voice. Nothing leaves your device until you seal a Seed.
Photos & VideoCamera roll + new captures
VoiceRecord voice Seeds
What we don't do: scan your full library or upload anything in the background. We only see what you choose to plant.
Headline (drafted)

So you can plant photos and video.

Body (drafted)

DandyLine needs access to your camera roll and camera so you can plant Seeds from photos, video, and voice. Nothing leaves your device until you seal a Seed.

Two toggles
  • Photos & Video — camera roll + new captures (single OS permission, surfaced as one toggle)
  • Voice — separate permission for microphone, surfaced as its own toggle so a Gardener who only wants photos can decline mic without losing capture
What-we-don't-do callout

A small inline trust-callout below the toggles: "What we don't do: scan your full library or upload anything in the background. We only see what you choose to plant." Not buried in a help link — visible in the moment.

Skip behavior

"Later" pill in top-right routes to next screen. The Gardener can grant photos/voice from the Gardener Menu later — but they cannot plant a media Seed without granting it. The Plant flow will gracefully prompt at the moment of attempted capture.

Web-app reality
This is a web app for now. The actual permission flow is browser-driven (camera/mic/file-picker prompts). The screen above represents the brand-voice frame DandyLine puts AROUND those native browser prompts. Decide during build: is the toggle-row pattern still useful as an in-app explainer that fires before the browser prompt? Or does the browser prompt itself carry the moment? Lean: explainer first, browser prompt second — gives DandyLine a chance to set context.
04

Screen 3 · Location

Later
Roots
Tag Seeds to where they happened?
Optional. If on, Seeds you plant remember where you planted them — and you'll see hidden Vaults that other Gardeners have tucked into places near you.
Location-tag my SeedsQuietly, only when I plant
Discover hidden VaultsWhen I'm near one
What we don't track: your live location, your movements between Plants, or anywhere you didn't plant a Seed.
Headline (drafted)

Tag Seeds to where they happened?

Body (drafted)

Optional. If on, Seeds you plant remember where you planted them — and you'll see hidden Vaults that other Gardeners have tucked into places near you.

Two toggles (independent)
  • Location-tag my Seeds — only fires at the moment of planting. Quiet. Not a background tracker.
  • Discover hidden Vaults — surfaces Roots-anchored Vaults nearby. Independent toggle so a Gardener who wants tagging but not discovery can have just that.
What-we-don't-track callout

The trust language matters more here than anywhere else in the setup flow. Location is the most-suspected permission. Explicit list of what we DON'T do: live location, movement tracking, anywhere they didn't plant.

Why two toggles instead of one

Some Gardeners want tagging without discovery (privacy-leaning, contributor-leaning). Others want discovery without tagging (explorer-leaning, browse-leaning). Splitting them respects both. They can both be on, both off, or either alone.

Default state: both toggles OFF on first arrival. The Gardener has to opt in. This is the brand-aligned default — patience over collection.
Visual examples needed
Per Moleskine intake, Ashley flagged that visual examples here would help a Gardener understand WHY they'd want this on. A small inline preview ("here's what location-tagged Seed looks like" / "here's what hidden-Vault discovery looks like") could go below the toggles. Defer to design pass — concept logged here.
05

Screen 4 · Notifications

Skip
Stay close
When should we reach out?
Toggle what you want to hear about. Examples below.
Seed bloomed
"A Seed planted for you 3 years ago has bloomed."
Reminder to contribute
"The Hatch Family Grove has 4 Seeds and waits for one more."
Seed Packet nudge
"You have 6 Seeds in your Seed Packet — ready to plant?"
Headline (drafted)

When should we reach out?

Body (drafted)

Toggle what you want to hear about. Examples below.

Pattern: examples first, toggles second

From Moleskine intake — Ashley specifically called out that bare "do you want notifications?" prompts are boring and don't sell why a Gardener would want them. Solution: show a few real-feeling examples first so the Gardener understands what they'd actually receive. Then surface the toggles.

Notification types (toggleable individually)
  • Your Seed has bloomed — when something a Gardener planted reaches its bloom moment
  • A Seed has been planted for you — when someone plants a Seed for them (Held in Trust)
  • Reminder to contribute — when a Grove they're in is awaiting their contribution
  • Vault has been quiet — when a Vault hasn't been tended in a long time
  • Seed Packet nudge — when un-planted Seeds have been waiting (Packet count or time threshold)
  • Posthumous variants — softer language when sender has passed (per HW#54)
SMS-only transparency note (web-app phase)
While we're a web app, we'll send these as text messages. DandyLine covers the cost on our end — your carrier's standard messaging rates may apply on yours. Once we ship native apps, you'll have push too.

This callout sits inside the notifications screen in a quiet "while we're early" voice — not a wall of legal text. Reinforced in the ToS draft.

Default-on vs. default-off per type
Sensible defaults: Bloom (on), Seed planted for you (on), Reminder to contribute (on), Vault quiet (off — too easy to feel scolded), Seed Packet nudge (off — let Weather surface it instead), Posthumous (auto-on if applicable). Confirm.
Phone number capture
If we're SMS-only, we need a phone number from the Gardener. Captured at sign-up (Row #6) or here? Lean: at sign-up, since recipient verification (Section H of Josh doc) wants the number too.
06

Bridge · You're set

Welcome
Your garden is ready.
Plant your first Seed when the moment comes. Or take a look around first — no rush.
Headline (drafted)

Your garden is ready.

Body (drafted)

Plant your first Seed when the moment comes. Or take a look around first — no rush.

Two CTAs
  • Plant the first Seed — primary, gold. Drops directly into the Plant flow.
  • Explore the Field — secondary. Lands the Gardener on the empty Field with the canonical dandelion mark, no pressure to plant.
Visual concept

The canonical dandelion mark, fully realized — same as Slide 5 of the Onboarding Intro. This is the second time the Gardener sees the full mark, and both times mark the entrance to action (sign-up before, Plant flow now). The mark is becoming familiar.

Why two CTAs

Some Gardeners want to act immediately; others want to explore before committing. Forcing the immediate action creates friction; offering both lets the Gardener self-select pace. Either way, they leave the setup flow having opened a door, not closed one.

Critical brand discipline: NO confetti. NO "🎉 You're all set!" energy. The bridge is quiet — the same gravity that will surround every sealing ritual later.

Animated dandelion moment

This bridge is also the natural home for the "your DandyLine garden is ready" animated dandelion moment from the Moleskine intake — the canonical dandelion with floating Seeds, doubling as a soft loading beat between sign-up and Plant. The animation runs once, settles into a steady ambient state, then awaits Gardener input.

07

What's NOT in this flow

Calendar access — explicitly not requested. From Moleskine intake (Ashley, May 2): "I don't need importing calendars or anything I feel like that's silly." Calendar doesn't fit the planting model — bloom dates aren't calendar events, they're sealed instructions to time. Importing a Gardener's calendar would conflate the two. Flagged here so a future implementer doesn't add it back without a strong reason.
Contact list access — not at this stage. A Gardener doesn't need their full contacts to plant their first Seed. When they invite a contributor or assign a Guardian, the moment of need will surface the request — contextually, not pre-emptively. Defer to those flows.
Privacy Policy / ToS — not re-asked here. Already accepted at sign-up (Row #6). Re-asking would feel paranoid. Links to the policies live in the Gardener Menu for any time the Gardener wants to revisit.
Email subscription opt-ins for marketing. Not in this flow. DandyLine does not have a marketing newsletter at MVP. If we add one, it lives in the Gardener Menu, not at first-launch.
08

Open Questions

① Persona Options
Confirm or refine the 5 persona options drafted in Screen 1. Are these the right framings? Anything missing? Anything that should be cut or merged? Multi-select OK with you?
② Single vs. Two Question Split
Original Moleskine note had two questions ("what describes you" + "what are you most interested in"). Folded into one multi-select here. Confirm: keep folded, or split back into two screens?
③ Browser Permission UX
Web-app reality: the actual photo/mic/location prompts come from the browser, not DandyLine. Is the in-app explainer (toggle-row pattern) firing BEFORE the browser prompt the right move? Lean: yes — sets context. Confirm during build.
④ Notification Defaults
Per-type default-on/off settings drafted in Screen 4 spec. Sensible defaults proposed; confirm before locking in code.
⑤ Phone Number Capture Point
If SMS-only at MVP, we need the phone number. At sign-up (Row #6), or here in the notifications screen? Lean: at sign-up — Section H of Josh doc wants it for recipient verification anyway.
⑥ Visual Examples for Location
Ashley flagged in Moleskine intake that visual examples on the location screen would help sell the value. Defer to design pass — concept logged in Screen 3 spec.
⑦ Skip Penalties
What's the experience if a Gardener skips everything? They get to the Bridge with no permissions granted. That's fine — but the Plant flow's first attempt at media capture will trigger browser permission prompts. Make sure the Plant flow gracefully handles "no permission yet" without blame language.
⑧ Re-Entry From Gardener Menu
Where do these toggles live after onboarding? Gardener Menu → Notifications + Privacy + Permissions sections. Confirm during Gardener Menu build (Row #7) — the toggles in this flow should be the same ones the Gardener can reach later from settings.
⑨ Total Time Budget
~90 seconds is the target for the four-screen setup arc. Test once interactive prototype is built. If the persona screen takes 30+ seconds (multi-select consideration), we may need to compress elsewhere or revisit the persona-as-multi-select decision.
09

Surfaces Affected

  • ux-onboarding-intro.html — the predecessor flow. Slide 5's "Begin" CTA → sign-in → THIS flow.
  • Sign-In screen (Row #6, future) — sits between intro and this flow.
  • Plant flow (existing, ux-planting-flow.html) — the destination after this flow's bridge screen. Must gracefully handle Gardeners who skipped permissions.
  • Gardener Menu (Row #7, future) — the long-term home for these same toggles. Persona/intent answers feed personalization.
  • Weather Hub (HW#41) — receives notification preferences from Screen 4. Same underlying signals; in-app surface vs. push surface.
  • Privacy Policy & ToS (Row #10, future) — the SMS cost disclosure on Screen 4 should be reinforced in the ToS.
  • Invited-contributor flow (ux-invited-contributor-flow.html, future) — Screen 1's "Invited by someone" option routes here, skipping the rest of setup.
  • brand-guide.html — the trust-callout pattern (sky-toned, italic-tinted) used here might warrant codifying as a reusable brand-voice block. Watch as it appears in more flows.
10

Brand voice guardrails

Words used in this flow (all on-brand)

  • Plant, Seed, Bloom, Vault, Grove, Gardener, Held in Trust, Seed Packet — DandyLine vocabulary
  • Tag, tend, capture — gentle action verbs
  • Garden, Field, Roots — grounded nouns

Words explicitly NOT used in this flow

  • Allow, deny, grant, permission — generic OS vocabulary. We say "tag," "remember," "capture," "let us reach out."
  • Settings, preferences, options — too administrative. We use "choices" or just frame each as a question.
  • Required, mandatory, must — DandyLine doesn't demand. Even photos access can be deferred.
  • Track, monitor, collect — language we use only in NOT-doing callouts.
  • Notifications as a generic noun is OK; "push notifications" is too tech.
Tone test: If a Gardener felt like they were being processed through a setup wizard, we got this wrong. They should feel like they're sitting down with a quiet host who's asking what they'd like before pouring tea. Even the toggles should feel that way.