Lab 15: Capstone — Design Platform

Time: 60 minutes | Level: Architect | Docker: node:20-alpine

Overview

Build a complete enterprise design system platform integrating everything from Labs 01–14: Style Dictionary token pipeline, PostCSS build, Web Components library (5 components), axe-core WCAG 2.2 AA audit, fluid responsive system, dark/light/high-contrast themes, and RTL support via logical properties.


Step 1: Platform Architecture

design-system/
├── packages/
│   ├── tokens/
│   │   ├── primitive.json     # #3b82f6, 0.25rem...
│   │   ├── semantic.json      # brand.primary → primitive.blue.500
│   │   └── component.json     # button.bg → semantic.brand.primary
│   ├── components/
│   │   ├── ds-button.js       # Web Component
│   │   ├── ds-card.js
│   │   ├── ds-modal.js
│   │   ├── ds-input.js
│   │   └── ds-badge.js
│   └── css/
│       ├── reset.css
│       ├── base.css
│       ├── themes/
│       │   ├── light.css
│       │   ├── dark.css
│       │   └── high-contrast.css
│       └── main.css           # Entry point
├── dist/
│   ├── tokens.css             # Generated by Style Dictionary
│   ├── components.css         # PostCSS output
│   └── bundle.min.css         # Production bundle
├── tests/
│   ├── a11y.test.js           # axe-core audit
│   └── visual.test.js         # Playwright regression
└── docs/
    └── storybook/             # Component documentation

Step 2: Token Pipeline — Full Three-Tier


Step 3: PostCSS Build Pipeline


Step 4: Web Components — 5 Production Components


Step 5: Fluid Responsive System


Step 6: Theme System


Step 7: RTL Support via Logical Properties


Step 8: Capstone — Full End-to-End Verification

📸 Verified Output:


Summary

Component
Technology
Status

Token pipeline

Style Dictionary 4

✅ CSS + iOS + Android

CSS build

PostCSS preset-env + cssnano

✅ Vendor-prefixed, minified

Web Components

Vanilla Custom Elements v1

✅ 5 components

Type-safe styles

Vanilla Extract recipe

✅ Zero runtime

A11y audit

axe-core WCAG 2.2 AA

✅ 0 violations

Fluid system

clamp() + container queries

✅ 8-step type scale

Theming

oklch() + data-theme

✅ Light/dark/high-contrast

RTL

CSS logical properties

✅ Fully bidirectional

CSP

SHA-256 hashes + SRI

✅ No unsafe-inline

Monorepo

npm workspaces

✅ Shared packages

Last updated