Changelog
Notable updates to the kit, docs site, and component contracts. Newest first.
2026-05-12
-
Patterns. Pattern hub and detail pages (
patterns/*.php): opener aligns with the doc contract, realhreftargets replace placeholders, hero carousel and card demos link to style guide, components, changelog, or example paths, facepile portraits use distinct routes, page shell demo useshamburger-collectionand in-page#page-shell-demo-topfor back-to-top, plus markup starters and short checklists on hero, cards, and page shell. -
Style guide. Restructured
style-guide.php: clearer opener and jump list, Ship next column, mental model section (#mental-model, merged former system logic), removed duplicate Mindset block, utility rules heading tightened, per-section purpose lines,#next-stepsbridge (Get Started, Components, Patterns, changelog), fewer placeholderhref="#"demos, extensionless YouTube links, and ASCII punctuation tweaks in technical copy. -
Component docs.
includes/component-page.phpskips empty example blurbs, shortens default checklist and sidebar copy, and tightens default “when to use” stubs. Per-page: summaries and configuration intros (earlier pass); deep pass adds list-filter default + variations flow, removes dead$componentSalesNotes, replaceshref="#"demos with routes orbuttonoverlays, accordiontype="button", and shorter imperative notes (shell, list-filter, facepile, theme toggle, tabs, bento, carousel).design.mddocuments the component-page spine (including optional empty descriptions). -
Accessibility. Accordion headers get a visible
:focus-visiblering (replacing outline removal alone). Skip link uses:focus-visibleplus an outline when shown. Tooltip docs use nativebutton.texttriggers; overlay dismiss demo uses abuttoninstead of a dummyhref="#"link. Checkerboard demos use descriptivealton stock photos.design.mdadds a short HTML-first accessibility baseline; primary nav logo SVG is markedaria-hiddenbecause the link text names the site. -
Overlay panels. Modals (
role="alertdialog",role="dialog" aria-modal="true", or.wckd-alertdialog) now manage focus: initial focus (optionaldata-wckd-dialog-initial-focusor first control in.wckd-alertdialog-actions), Tab stays in the innermost open panel, focus returns to the opener on close. Buttons in.wckd-alertdialog-actionsclose after their own listeners unlessdata-wckd-overlay-primaryordata-wckd-overlay-dismiss. Triggers use one document-level capture listener; Escape closes the innermost panel first (skipped while a.wckd-dropdownmenu is open). Nested panels: clearer stacking and backdrop, close controls stop propagation so parents are not dismissed by mistake, backdrop dismiss ignores clicks from.close-overlay, and the injected close clearsdocument.bodyoverflow the same as backdrop dismiss. CSS adds.wckd-alertdialog-actionsand a slightly narrower default modal width; duplicate close buttons are skipped.
2026-05-07
-
New core component: Dropdown. Added
wckd-dropdownfor click-triggered action menus: use one.wckd-dropdownroot with a direct childbuttonandul. Runtime closes on outside click and Escape, keeps one menu open at a time, and clamps open menus to the viewport edge. -
New optional component: Toast notifications. Added non-blocking feedback toasts with
window.wckd.toast(message, { tone, duration })and declarative triggers viadata-wckd-toast, shipped aswckd-ui-kit/components/toast.cssandwckd-ui-kit/components/toast.js.
2026-05-04
-
Utilities.
.gap-row-*and.gap-column-*now setrow-gapandcolumn-gap(they previously set thegapshorthand on both axes). Combine with.gap-*when you need the same value on both axes, or mix row + column utilities for independent control. -
Docs lists.
ul.checkmarkscheckmarks render viali::before(markers are suppressed whenlist-style: none). -
Prose rhythm. Lists (
ul,ol, and.no-bullets/.columnsvariants) that immediately followh1/h2(or.h1/.h2) use a larger default top margin than lists after smaller headings or paragraphs, so section titles breathe more before bullet blocks.
2026-05-01
-
Carousel controls. Prev/next arrows and the dot row are still on by default for non-ticker carousels. The root class
hide-navnow removes both arrows and dots so the strip is swipe- or scroll-only. To hide only one, usehide-arrowsorhide-dots. Ticker carousels still never add arrows or dots. If you previously usedhide-navto hide only the side arrows while keeping dots—for example on a vertical track—switch that markup tohide-arrows. -
Legacy
show-nav. The oldshow-navclass was removed. Arrows and dots are on by default now; leave the hide classes off, or usehide-arrows,hide-dots, orhide-navas above when you need to hide them. -
License. WCKD UI is released under the MIT License (
LICENSEat repo root, SPDXMIT). The Terms of Use page summarises MIT, suggested attribution to WCKD UI / WCKD Marketing, Inc., and trademark notes; theLICENSEfile is controlling for software rights.