Skip to content

v0.7.0 — la piel

Choose a tag to compare

@rodrigoteamx rodrigoteamx released this 05 Jul 12:15

La piel: el theming pasa de release-grade en color/spacing/radios/motion/dark-light a release-grade también en tipografía y dimensiones estructurales — la brecha que dejó la auditoría de personalización (32 hallazgos).

npm i @milpa/design

Todo aditivo: cada token nuevo defaultea a su valor actual, así que el build por defecto es pixel-idéntico salvo un ajuste deliberado de 70ch→65ch en dos bloques de prose. 68 piezas con contrato · 193 pares WCAG AA · audit de cierre 0 pares nuevos (release sin color).

Added

  • --font-heading / --font-body — el split 2-tier que reemplaza el --font-display único; ambos defaultean al mismo stack ('Space Grotesk', system-ui, sans-serif). --font-display queda vivo como alias (var(--font-heading)) — nadie que lo consuma se rompe. Además una regla base :is(h1..h6) { font-family: var(--font-heading) }, así que CUALQUIER heading —no solo los .mui-*__title— sigue la fuente de títulos.
  • --font-serif — fuente de prose/quotes; defaultea a var(--font-body) (cero cambio hasta que el consumidor ponga un serif editorial).
  • --weight-semibold (600) — completa la escala 400/500/600/700.
  • Grupo size de tokens públicos (diez, default = literal que reemplazan): --focus-width/--focus-offset, --border-width, --container-max/narrow/wide, --header-h/--sidebar-w/--drawer-width, --measure.
  • Doc de carga de fuentes en THEMING.md: snippet self-host @font-face + alternativa <link>, y nota de que la degradación a system-ui es intencional (el paquete no envía fuentes).

Changed

  • verify-theme valida los 7 grupos del contrato por FORMA (tipo + no-vacío) para cualquier token no-color que un skin setee — no solo color. El contrato distingue hard-gate (contraste AA) de form-gate (longitud/número/tiempo/…) y deja de sobre-declarar.
  • Tailwind fontFamily pasa a var-based (heading/body/serif/mono + display alias) — themeable desde Tailwind también.
  • Los cuatro bundles repuntan sus literales a los tokens nuevos: ~45 sitios de fuente → heading/body/serif, 42 anillos de foco → --focus-width/--focus-offset (signo preservado en offsets negativos), ~86 bordes → --border-width, container/app-shell/drawer/measure → sus tokens; aspect-ratio reusa --media-ratio.
  • COMPAT — ninguna ruptura: --font-display sigue resolviendo (alias vivo). Quien quiera títulos ≠ cuerpo ahora setea --font-heading/--font-body por separado.

Fixed

  • Ancho de lectura de prose unificado a --measure (65ch): .mui-api__desc/__deprecated-note usaban 70ch inconsistente — el único cambio visual del release (angostamiento de 5ch en esos dos sitios).

Changelog completo: CHANGELOG.md · Theming: THEMING.md · La constitución: DESIGN.md