plgg-ui
v0.1.1
Published
The plgg-family UI engine: pane-alignment layout, a declarative admin vocabulary, a TEA scheduler, screen-mode renderers, form controls, and a parameterizable light/dark theme surface — the reusable seam extracted from plggmatic. Runtime on the root barre
Downloads
345
Readme
plgg-ui
UNSTABLE - Experimental study work. Part of the plgg monorepo.
The plgg-family UI engine: the reusable seam extracted from
plggmatic (the plggmatic-extraction-cut trip). It carries the
engine + theme mechanism that both a docs framework
(plggpress) and a branded design system (plggmatic) consume,
with no brand identity of its own — the Pragmatic --pm-* design language is
a default that a consumer can replace.
Two export surfaces, mapped to the two things consumers use:
plgg-ui(root barrel) — the runtime surface:row/column/panelayout combinators, the fundamental components as pure(props) => Html<Msg>, caster-parsed forms, the declarative admin vocabulary (declare/menu/collection/action), the TEAschedulescheduler, and the screen-mode renderers.plgg-ui/style(subpath) — the theme surface: plgg-view's inline-style utilities and token maps, plus the scheme-aware color atoms, the CSS emitters (schemeCss/metricCss/syntaxCss/chromeCss/reducedMotionCss), the token helpers (colorVar/metricVar/maxWidth/minWidth), the appearance script (appearanceStorageKey/injectAppearanceScript), and thethemeToggle*family (themeToggle/staticThemeToggle/themeToggleClass/themeToggleCss).
The ./style subpath boundary equals the surface boundary, so a consumer's theme
imports and runtime imports never cross. Built on plgg and
plgg-view only — it imports neither plggpress nor
plggmatic (dependency direction is one-way).
Provenance
Re-homed byte-for-byte from plggmatic by ticket A1 of the
plggmatic-extraction-cut trip (git mv of the Meta/Style/Layout/
Component/Form/Declare/Schedule/Render trees). The shipped default is
still the monochrome --pm-* design language; ticket A3 parameterizes it as a
typed Theme so the values become a replaceable default and plggmatic owns the
branded contract.
