Search

Search components, tokens, patterns, architecture

Architecture

Information Architecture

Peri is a three-tab interpretation surface over a single daily record, with all data entry funneled through one floating action, and everything administrative pushed to an edge drawer.

The inversion that defines the product

Most trackers make logging the home screen and bury insight. Peri inverts this — Today is a read-only dashboard; logging is a modal act you perform and leave. The user's job is to understand her capability, not to feed a database.

Architecture diagram

The tree

PERI
├── ENTRY      Splash → Onboarding (3 steps, skippable) | Demo mode
├── CHROME     Top bar · WeekStrip → Month calendar · Tab bar + [+]
├── TODAY      DailyFocus → drawer · Fueling · RecentTrends · WhatNext
├── INSIGHTS   Trends · Playbook · Training · Sleep · Cycle · Symptoms · Stats row
├── TREATMENTS Category filter · Active/Past protocols · PDF export
├── [+] LOG    Symptoms · Workout · Period · Sleep · How You Feel · Treatment
└── PROFILE    Edit profile · Log History → PastEntryModal · Wearable sync
               Privacy · Legal · Sign out

Navigation model

MechanismTypeCarries
Tab barlateral, flat (3 peers)the three reading modes: now / over time / interventions
Floating +modal overlay — not a tabthe single writing mode
WeekStrip / Calendartemporalchanges navDate — recomputes the whole Today tab
Card face → drawervertical disclosuredetail + explainability for one card
Assumption actioncross-layer shortcutdrawer → closes → log screen (320ms)
Avatar → Profile draweredge draweraccount, history, settings, sync
Protocol card → log screenedit-in-placetreatments reuse the log screen as editor

Three properties worth naming: a single write funnel (one mental model for “where do I put things”, one merge-safe save pattern in code); time as a dimension, not a place (history isn't a tab — the strip re-aims the same dashboard); and drawers as the only disclosure unit (no back-stack exists anywhere — you are always one dismiss from the dashboard).

Progressive disclosure layers

LayerSurfaceQuestion answered
L0Tab faceWhich mode am I in?
L1Card faceWhat should I know at a glance?
L2Drawer / accordionTell me more
L3Explainability blockWhy — and what did you assume?
L4Action handoffFix the assumption

Task frequency → prominence

FrequencyTasksCost
Daily (seconds)check capability & recommendation · glance fueling0 taps — the default tab
Daily (write)log feel / sleep / workout / symptoms / period2 taps + input via [+]
Weekly (minutes)review trends & playbooks · read reasoning · check another day · sync wearable1 tap (tab) – 2 taps (drawer)
Monthly or rarertreatments & PDF export · deep history · profile/legaltab or drawer depth

The one deliberate exception

Treatments holds a top-level tab despite low frequency — HRT protocols are identity-critical context for the perimenopausal athlete and anchor the “Since [Treatment]” trend comparisons. Its presence signals the product takes protocols seriously; History and Settings earn no such slot.

Why it's organized this way

  1. 01The dashboard is the product — engines are the value, raw data is means. A log-first IA would present Peri as a diary with charts: the generic wellness pattern this product rejects.
  2. 02Three tabs = three time horizons: now · weeks–months · interventions spanning months. No fourth horizon exists, so no fourth tab.
  3. 03Write once, own fields — each log screen owns disjoint Entry fields and merges into one dated record. Six doors, one room.
  4. 04Explainability lives inside the thing it explains — not in a separate AI or help section.
  5. 05Demo mode is an IA overlay, not a fork — same screens, real engines on the Sara Jackson dataset, write path disabled.
  6. 06Administrative gravity pulls to the edge — the center of the screen is reserved for capability intelligence at all times.

Canonical screen inventory

#ScreenTriggerLayer
1Splashunauthenticated launchentry
2Onboarding 1–3first sign-inentry
3Today dashboardtab log (default)L0
4Insightstab patternsL0
5Treatmentstab treatmentL0
6Month calendar panelWeekStrip toggleoverlay
7Log Activity drawer+overlay
8–13Log Symptoms / Workout / Period / Sleep / How You Feel / Treatmentdrawer rowsmodal z-600
14Daily Focus drawerDailyFocusCardsheet
15–18Trends / Sleep / Cycle / Symptoms detail drawerscard facessheet
19Profile drawer + sub-viewsavataredge drawer
20PastEntryModalhistory rowmodal
21SyncProgressModalwearable syncmodal
22Export flow (scope → generating → ready)Treatmentssheet sequence
23Toastsave/sync eventsephemeral

No other screens exist. User flows (Phase 2) reference this inventory by number.