WireKit v1.6.1
Patch release covering five developer-visible fixes plus a README restructure and badge expansion. No new API surface; no breaking changes; every component renders byte-identical to v1.6.0 unless its specific bug applied.
Fixed
prefers-reduced-motion: reducenow actually honored on<x-wirekit::andreveal> wk-animate-*utilities (WCAG 2.3.3). The component documentation and helper docblock claimed the OS-level reduced-motion preference was respected, but the global@media (prefers-reduced-motion: reduce)block indist/only gatedwirekit. css [x-transition]selectors — the 22 keyframe animations driving every preset ran at full speed regardless of user preference. The block now gates[class*='wk-animate-']as well, snappinganimation-durationto0.01msso reduced-motion users see an instant snap-to-final state. Behavior now matches the documented contract.- Nested
<x-wirekit::margins no longer accumulate inside typography wrappers. When the component is rendered inside a developer'slist> .prose/.docs-prose/@tailwindcss/context, the wrapper'stypography <ol>/<ul>/<li>rules injectedmargin: 1em 0onto every level — and the previous Tailwind-utility approach was too low-specificity to win the cascade. Nested lists looked progressively more spaced out at deeper levels regardless of thespacingprop. The component now ships with awk-listmarker class plus dedicatedwk-list-spacing-{none,sm,md}rules indist/whose doubled-class selectors win on specificity alone (nowirekit. css !important, so developers can still override with even-higher-specificity rules when they explicitly need to). Thespacingprop is now the single source of truth for inter-item vertical rhythm at every nesting depth. bounceandspringreveal presets — final state no longer fades back to invisible. Thewk-bounce-inandwk-spring-inkeyframes declaredopacity: 1only at the 50% / 60% peaks; the 70% and 100% frames left opacity unspecified. Withanimation-fill-mode: both, some browser implementations held opacity at 1 from the last specified frame, but others interpolated back toward the underlying inlineopacity: 0after the animation settled — the element became visible briefly, then vanished. All fourbounce/springkeyframe blocks now declareopacityat every frame, so the final-state behavior is browser-independent.
Changed
README.mdrestructured from a comprehensive standalone reference to a concise getting-started overview. Installation walkthrough, Quick Start example, and the browser-support table are retained on the GitHub landing page; extended component tables and the customization reference now live at docs.wirekit.app where they're searchable and link-rich. Net effect: the README acts as a 30-second "what is this and how do I install it" landing page; docs.wirekit.app remains the authoritative reference for everything else.README.mdbadge row expanded from 3 to 11 badges across two visual rows. Row 1 (project status): Packagist version, Total Downloads, GitHub Actions test status, MIT license, GitHub Stars, component count. Row 2 (stack): PHP ≥ 8.4, Laravel 12+, Livewire 4+, Tailwind CSS v4, Alpine.js. The CI badge in particular gives evaluators an at-a-glance signal that the build is green onmain. Component-count badge auto-validates againstComponentvia a Pest sync guard so the displayed number can never drift from the actual registry size.Registry