Design system 2026
Every token, primitive and block of the new vivla.com, drawn by the real code. If something looks wrong here, it is wrong on the site.
Foundations
Colours, the four section themes, the type scale, spacing, containers, radii and motion — read from the tokens generated from Figma.
packages/design-system/src/tokens.figma.json
Primitives
The Astro components every page and block is built from (@vivla-cms/ds). New UI uses these and the role utilities only.
packages/design-system/src/primitives
- Accordion 4 stories
- Badge 4 stories
- BadgeMatrix 4 stories
- Button 10 stories
- ButtonMatrix 4 stories
- Card 6 stories
- Carousel 1 story
- Dialog 3 stories
- Divider 1 story
- Eyebrow 4 stories
- Heading 8 stories
- Icon 4 stories
- Layout 7 stories
- Link 3 stories
- Marquee 3 stories
- Media 5 stories
- Script 3 stories
- Tabs 4 stories
- Text 8 stories
- TextField 3 stories
- Typography 4 stories
- Video 2 stories
- Wordmark 3 stories
CMS blocks
What marketing places from the CMS, each variant rendered from its fixture through the real BlockRenderer — the same data /dev/blocks/<slug> shows.
packages/cms-blocks/src/renderers
- Accordion 8 stories
- CardGrid 11 stories
- Chapter 6 stories
- ContactPanel 4 stories
- EditorialFeatures 10 stories
- EditorialText 8 stories
- FeatureList 7 stories
- Gallery 11 stories
- Hero 5 stories
- Media 11 stories
- MediaCollage 10 stories
- NumberedList 5 stories
- Prose 7 stories
- SplitFeature 2 stories
- Statement 10 stories
- StepPanel 12 stories
- Testimonials 1 story