WireKit v2.9.0
Minor release. A local MCP server, discoverable AI tooling, new SaaS icon aliases, a dropdown form-submit affordance, dev-mode composition + prop warnings, and documentation — all backward-compatible.
Added
- A local MCP server —
php artisan wirekit:mcp-serve. AI coding assistants spawn it over stdio and query the component catalog live while authoring, so the editor reads real prop signatures and design tokens instead of guessing them. It is local and read-only — no port, no daemon, no network, always version-matched to your installed WireKit. See the AI-tooling guide for copy-paste editor config and the CLI reference. - A tool-neutral
AGENTS.mdat the package root. It points AI coding assistants at thewirekit:list/wirekit:show/wirekit:iconsdiscovery commands, so assistants that do not read the Cursor rules still find the tooling. The README gains a matching "Using WireKit with AI assistants" section. - A Laravel Boost skill manifest —
php artisan wirekit:boost-skills. Publishes.boost/— every component with its real props + defaults, the theme presets, the customization decision tree, and the CLI — so a Laravel-Boost-aware editor autocompletes WireKit. Auto-generated from the installed package, so it cannot drift from your version; re-run to refresh after an upgrade. See the CLI reference.wirekit. json - Five high-frequency icon aliases now resolve out of the box on every base preset —
settings,gear,dashboard,billing, andcredit-card. Previouslysettings/gear/dashboard/billinghad no glyph on a base-only setup. See<x-wirekit::.icon> <x-wirekit::now honors a callerdropdown. item> type. A no-href item still defaults totype="button", buttype="submit"lets it drive a wrapping<form>— the canonical CSRF logout for non-Livewire apps. A "Sign out & form actions" recipe documents both the Livewire and the form-submit paths.- A
hideLabelprop on<x-wirekit::,input> <x-wirekit::, andselect> <x-wirekit::. It keeps the realtextarea> <label>(so the control keeps its accessible name) but renders it visually hidden — for a compact field in a toolbar or header, where the default stacked label reads wrong. - Dev-mode warnings for two silent mistakes (debug only, silent in production).
<x-wirekit::warns when content is placed directly in it with nocard> card.body(it would otherwise render flush against the border), and a misspelled prop on a prop-rich component — the form controls plus button, badge, alert, stat, callout, progress, and tooltip — now logs a "did you mean" hint instead of silently doing nothing.
Changed
- The shipped
.cursor/AI-authoring rules were corrected to match the shipped API. Several prop names (the layout primitives takerules/ wirekit. mdc gap, notspace; the button takesintent), token names, and a composition example had drifted from the components they describe. The file now matches the real surface and gains thecard.bodyand app-shell composition patterns, with a guard that keeps it from drifting again.
Fixed
- A caller
aria-labelnow reaches the actual control on more form components. On<x-wirekit::,otp-input> <x-wirekit::,rating> <x-wirekit::, andtags-input> <x-wirekit::, a callerfile-upload> aria-labelpreviously landed on the outer wrapper, where assistive technology ignored it. It now names the role-bearing element — therole="group"/role="radiogroup", or the text / file<input>— so screen readers announce it. A class-level guard now locks this across every single-interactive-element component.
Documentation
- Setup and reference guidance for the most common first-build mistakes. A consolidated "Styles not applying?" troubleshooting checklist and a "using WireKit tokens in your own Tailwind classes" note on the integration and customization pages; a Spacing-and-Layout token section on the Design Tokens page; a typography signpost steering body copy to
<x-wirekit::; a note thattext> navbarand the app-shell are alternative layout shells; and corrected prop / token references across several component pages. The AI-tooling guide now features the local MCP server with copy-paste editor config, and component reference pages lead with their live examples — usage notes and prop conventions moved below.