The release-sized product boundary is defined in Library scope. The deployable documentation and preview application follows Catalog architecture.
- Zero-dependency
mado-uiCLI. - Versioned registry and JSON schemas.
- Default/modular project detection.
- Safe
init,list,view,add,update,remove,diffanddoctorflows. - Deterministic lock with explicit roots, captured dependency edges, a compatibility generation and SHA-256 source hashes.
- Three-state update planning that replaces pristine source, preserves non-conflicting customizations and blocks ambiguous merges.
- Package, default fixture, modular fixture and catalog smoke coverage.
Implemented:
- semantic light, dark and forced-colors theme tokens;
- badge;
- native button and link recipes with one visual contract;
- inline code, code block and keyboard-input recipes;
- native input, select, textarea and checkbox recipes;
- editable combobox with a native datalist fallback, Popover-backed listbox, retained input focus and complete form/event behavior;
- native modal and non-modal dialog surfaces with browser-owned focus, modality and close lifecycle;
- native
details/summarydisclosures with an opt-in exclusive group via a shared non-emptyname; - declarative non-modal popovers with browser-owned visibility, light dismissal and progressively enhanced anchor positioning;
- popover-backed dropdown menus with composite keyboard navigation, typeahead and focus return;
- stack, cluster and responsive grid layout recipes;
- native determinate/indeterminate progress;
- native semantic meter ranges;
- resilient avatar image/fallback presentation with stable semantics;
- native horizontal-rule separators for thematic breaks;
- finite, reduced-motion-aware decorative skeleton placeholders;
- reduced-motion-aware decorative spinner;
- progressively enhanced tabs with automatic activation, roving focus and useful in-page links as the static fallback;
- native Interest Invoker tooltips with authored descriptions and a progressively enhanced hover, focus and Escape fallback.
Closed-choice controls remain native. Progressive helpers are introduced only where the platform lacks the complete interaction, while retaining native validation, submission, reset and an honest unsupported-browser fallback.
Implemented:
panel/card surfaces.- Contextual
alertfeedback. - Native field, description, fieldset and validation-message composition.
- Wrapping native breadcrumbs with application-owned routes and current-page semantics.
- Vertical and wrapping horizontal navigation lists with native link keyboard behavior.
- Popover-backed responsive navigation with native links, delegated dynamic item handling, a locally scrolling body and a pinned account/action footer.
- Native-first in-flow notification regions with a separate stable status announcer and application-owned message lifecycle.
- Responsive metric cards using native description-list label/value groups.
- Native description-list composition for structured term/value groups.
- Responsive
page-headerstructure without fixed heading or landmark semantics. - Visual
toolbaraction groups with native Tab order. - Responsive thematic form sections and explicit-label settings rows.
- Native search-and-filter form composition with separate collection actions and normal Tab order.
- Responsive native-table shell with local keyboard-reachable overflow.
- Wrapping pagination with native links and current-page semantics.
- Shared
content-statelayout for empty, loading, success, warning and recoverable error presentation with application-owned async, announcement and focus behavior. - Readable native document flow for guides, policies and other long-form informational content without styling nested blocks implicitly.
- Modal command palette composed from native dialog and the stable editable combobox contract, with application-owned commands and shortcuts.
Implemented:
- Responsive application shell with native route navigation, a skip link and one route-content landmark.
- List/data page with shareable native filtering, table results, pagination and an honest empty state.
- Parameterized detail page with native breadcrumbs, grouped metadata and a missing-record branch.
- Parameterized edit form with native constraints, reactive form state and an explicit application-owned persistence seam.
- Native settings page for profile, locale and preferences with explicit descriptions and application-owned persistence.
- Focused authentication shell with a skip link, home route and no embedded identity or access policy.
Templates are copied Mado page() and layout() recipes. Product-specific
data access, routing and domain language stay in the application.
Further page recipes should be extracted from repeated application needs,
not added speculatively.
Implemented:
- Typed manifest covering all 44 current registry items.
- Routed Mado shell, direct item URLs and per-item lazy showcases.
- Isolated same-origin template previews that cannot nest application and catalog main landmarks.
- Static declarations for every current public catalog route.
- Native local search and category filtering over the catalog manifest, with shell-owned state that survives SPA navigation.
- Stable
@latestClipboard API copy actions with a visible manual-copy path when clipboard access is unavailable. - A persistent application-owned notification region with one stable status announcer for copy results.
- A validated reference contract for all 44 registry items, split by family and lazy-loaded with each item route.
- Composition, public API, source-detected classes and CSS properties, accessibility, keyboard, focus, fallback, dependency graph and copied-file references on every item page.
- Static
/docs/installation,/docs/themingand/docs/cliroutes derived from one Node-readable guide manifest. - Repeatable 48-route, 49-snapshot release verification and an independent
Cloudflare deployment at
ui.madojs.dev.
Planned:
- Immutable versioned catalog releases after the first stable registry release.
- Immutable historical registry releases and honest three-way diffs.
- Migration reports for upstream behavior changes.
- Optional
mado ui ...delegation from the framework CLI. - Registry namespaces only after a real third-party registry appears.
- Registry validation and strict TypeScript.
- Real-browser behavior for focus, keyboard, slots and forms.
- Static snapshot and live takeover coverage.
- 320 px layout, 200% zoom and forced-colors review.
- Generated default and modular applications typecheck and build.