01 / Good objects
A warm beginning
Everyday objects with a generous, easygoing personality.
Edition 02 / the working component system
Use the classes in this reference and the exact values in theme.json. These components inherit this identity's fonts, colors, proportions, and controls.
Display / fraunces
Take the day as it comes.
Reading text is 16px with a 1.7 line height and a maximum line length of 65 characters. A useful hierarchy is a first-class part of the system.
Soft-focus optimismMulberry#713F4A
Peach fuzz#F0BA99
Buttermilk#FCEDCE
Pistachio#B7B885
Ink on paper and ink on accent are approved normal-text pairings. Support color is a decorative surface until a specific text pairing is checked.
Buttons are at least 48px tall. Focus is visible. Keep existing handlers, links, and form behavior when applying the theme.
01 / Good objects
Everyday objects with a generous, easygoing personality.
02 / The good feeling
Form and texture that make a place feel more like yours.
03 / Notes
A collection that leaves room for your own rhythm.
| Element | Value | Purpose |
|---|---|---|
| Spacing unit | 4px | A consistent compositional rhythm |
| Body text | 16px / 1.7 | Comfortable, readable content |
| Controls | 48px minimum | Useful touch and keyboard targets |
Download the complete kit. Read INSTALL.md, run install-theme.mjs against your project, and attach the exact data-openform attribute to your root or intended subtree.
Yes. Use theme.css and map your components to the provided of-* classes. Preserve your routes, application data, interactions, and actual business content.