Repository navigation
v0.7.0
·
3 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
v0.7.0
The design system now ships the icon library and the type foundations the
Althea rebuild runs on, as ruled in the v0.7.0 entry of 2026-10-01 in
docs/DECISION_LEDGER.md. The althea-prototype repository is the source of
truth for the new values. The icon export is provisional: its first consumer is
Althea's rebuild, and 0.8.0 withdraws it if no Althea release that imports it
has merged by then. The rebuild's first step proved this build in Althea before
the tag.
Icons (new, provisional)
@tiptree/design-system/icons.js: one frozen, data-only ES module of 130
glyphs keyed by what they draw, in Solar's current Iconify names (close,
close-circle,magnifier,pin-filled), each with its cut (linearat
rest;filledforpin-filled;solidformenu-dots,grip-dotsand
plus-heavy) and its body for a 24 viewBox.icons.jsoncarries each
glyph's provenance: 113 Solar glyphs verbatim, 3 modified (microphone,
ghost,history-2) and 14 Tiptree drawings, among themplus-heavy, New
conversation's plus with its bars drawn filled, the one optical correction
kept in the drawing. Both also ship in the wheel at
tiptree_ui/assets/icons.jsonandicons.js. No Swift form.- Every stroked shape carries
vector-effect="non-scaling-stroke", so the
1.5 line is 1.5px at any size (the sparkles ofmoon-starsand
stars-minimalisticdraw at 1px, by Solar's design): set size and colour
only, and remove CSSstroke-widthrules aimed at icons, which now mean
screen pixels. - Role names stay in each app, with a test that every mapped name exists. A
glyph an app needs first goes in its extension file, registered in
registry/icon-extensions.md. Brand marks are not icons. - Solar by 480 Design, CC BY 4.0. The package licence is now
Apache-2.0 AND CC-BY-4.0; seeNOTICEandLICENSE-CC-BY-4.0.txt. The
module keeps a/*! … */header and anattributionproperty.
Tokens
- New, web-only:
border-hairline(1px, and 0.5px at
(resolution >= 192dpi)). - New, cross-platform:
radius-28(Swiftr28). The corner ladder is
4 / 8 / 12 / 16 / 20 / 24 / 28 / full;radius-6stays, off the ladder. - New Button roles:
color-action-primary-bg,-bg-hoverand-fg
(lightteal-600/teal-700/ white; dark#2e585a/#43696b/
white) andcolor-button-secondary-bg-hover(lightstone-150; dark
#40403f). The dark values are the prototype's glass Button made opaque;
the glass itself is the component's material, not a token. - New surface roles for the three surfaces and the control ring:
color-surface-block,color-surface-box,color-border-block,
color-border-box,color-border-box-focus,color-border-control,
color-border-overlay(cross-platform) andshadow-block,shadow-box,
shadow-overlay(web-only). An overlay's fill is the existing
color-surface-card. - Changed:
font-sansleads with'Inter Variable', 'Inter', 'Inter Fallback';
font-serifadds'Literata Fallback';font-heading-sub-weightis
{font-weight-medium}(510, was 500), visible where a consumer aliases it
and renders the variable face. - Unchanged: motion and z-index. Not minted:
font-label-monoand
surface-alpha-*.
Generator and gates
tokens.jsonaccepts amediamap of named, allow-listed queries; the
block is emitted after:rootinprimitives.cssandtokens.css, never
in a theme file, and the Python and Swift exports keep the base value.tokens.cssand the three theme files gain 1 KiB of raw budget for the
ten surface roles; the icon module andicons.jsonare budgeted.- A public-surface snapshot per release (
tests/public-surface/) fails on
any unrecorded change of a name; the release workflow checks the tarball's
and the wheel's contents, and publishesvX.Y.Z-rc.Ntags as pre-releases
when a release needs one.
Removed / Renamed
- None.
Artifacts
npm tarball, Python wheel, SHA256SUMS and provenance attestations. The
v0.7.0 tag is the Swift Package release; its diff is additions only: r28,
the four Button colours and seven surface colours.