Search

Search components, tokens, patterns, architecture

Resources

Contribution Rules

How to extend Peri without diluting it. The system is small on purpose — most contributions should reuse before they invent.

The checklist, in order

  1. 01Reuse: does an existing component, prefix, or pattern cover this? (Check the relevant component page and the CSS prefix table.)
  2. 02Tokens only: no raw hexes, no new gradients, no new shadows. If a token is missing, propose it on the Colors page first.
  3. 03Palette law: warm palette only. Purple in any form is an automatic rejection.
  4. 04Spacing: if you're placing a card, the answer is 16. New gaps need a reason.
  5. 05AI surfaces: any card rendering engine output must implement all four disclosure layers and the AI Insight contract.
  6. 06Copy: interpretation first, confidence-hedged, no exclamation marks, no streaks/badges/guilt.
  7. 07Divergence: if your change makes app and Figma disagree, add a ruling to the register in the same change.
  8. 08Accessibility: meet the system-wide rules; add component notes to the relevant page.
  9. 09Document: every new component/pattern lands with its portal page — undocumented UI is unfinished UI.

Hard constraints (never relax)

Product safety rules

  • No fever or ovulation inference from temperature data.
  • No raw physiological numbers presented as medical readings.
  • Symptoms always win over cycle optimism in any conflict.
  • Missing data reduces confidence — never scores, never guilt.
  • Storage keys are immutable (existing users' data).

Sources of truth

QuestionAnswer lives in
How does it behave?the shipped app (tuluna-app/) — engines and screens
How should it look?the Peri Figma file (Design System + Final screens)
Who wins a conflict?the divergence register
What does a word mean?the glossary