Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Wirekit Laravel Package

pushery/wirekit

WireKit is a free, open-source UI component library for Laravel Livewire. Build dashboards and marketing pages with Tailwind CSS v4 and Alpine.js using clean, themeable, accessible components with dark mode support and no utility-class soup.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Accelerate UI Development for Laravel Livewire Apps

    • Build vs. Buy: Replace custom UI components or third-party libraries (e.g., Bootstrap, Tailwind UI) with a native Laravel Livewire solution, reducing dependency sprawl and frontend-backend friction.
    • Roadmap: Prioritize rapid iteration for dashboards, admin panels, or marketing sites where UI consistency is critical. Example: Launch a customer portal in 30% less time by leveraging pre-built forms, modals, and data tables.
    • Use Cases:
      • Internal Tools: Admin dashboards, reporting interfaces, or workflow builders (e.g., <x-wirekit::kanban>, <x-wirekit::table>).
      • Public-Facing: Landing pages, pricing tables, or interactive tutorials (e.g., <x-wirekit::hero>, <x-wirekit::tour>).
      • Component Libraries: Ship reusable UI primitives to frontend teams (e.g., <x-wirekit::alert-dialog>, <x-wirekit::toast>) with zero utility-class soup.
  • Enforce Design System Consistency

    • Theming: Standardize colors, spacing, and typography via CSS variables (e.g., --color-wk-accent) to align with brand guidelines. Example: Override the default accent color in app.css:
      @layer base { :root { --color-wk-accent: var(--color-brand-primary); } }
      
    • Accessibility: Leverage built-in a11y defaults (e.g., aria-label on icons, rel="noopener" on links) to reduce manual audits.
  • Reduce Frontend Complexity

    • Alpine.js + Livewire Integration: Offload client-side interactivity (e.g., dropdowns, modals) to WireKit’s Alpine-powered components, simplifying JavaScript logic. Example: Replace a custom modal with:
      <x-wirekit::modal>
          <x-slot:trigger><x-wirekit::button>Settings</x-wirekit::button></x-slot:trigger>
          <x-slot:body>Modal content</x-slot:body>
      </x-wirekit::modal>
      
    • No Polyfills: Align with modern browser support (Chrome 111+, Safari 16.4+) to avoid legacy CSS/JS overhead.
  • Developer Experience (DX) for Teams

    • CLI Tooling: Scaffold Livewire pages or fork components via php artisan wirekit:make to onboard new developers faster. Example:
      php artisan wirekit:make page:dashboard --base=app-shell
      
    • AI/IDE Integration: Export machine-readable schemas (wirekit:export-json) to power autocomplete or documentation generation (e.g., Swagger for UI components).
  • Monetization Opportunities

    • Premium Themes: Sell curated themes (e.g., "Cupertino" preset via wirekit:theme) or icon packs (e.g., heroicons-marketing).
    • Enterprise Support: Offer consulting for large-scale integrations (e.g., custom chart adapters, dark-mode overrides).

When to Consider This Package

Adopt WireKit If:

  • Your stack is Laravel 12+ / Livewire 4+: WireKit is tightly coupled to these versions; migrating older apps would require significant refactoring.
  • You prioritize Tailwind CSS v4: The library assumes modern Tailwind features (e.g., @layer, color-mix()) and does not support legacy CSS.
  • Your team lacks frontend expertise: WireKit abstracts away complex interactivity (e.g., modals, charts) while maintaining Livewire’s reactivity.
  • You need a "batteries-included" component set: Covers 90+ components out-of-the-box (forms, overlays, data display) with zero configuration for common use cases.
  • Dark mode is a requirement: Built-in dark-mode support via CSS variables (no manual toggling needed).
  • You’re building a design system: The theming system (CSS variables + Blade overrides) makes it easy to enforce brand consistency across apps.

Look Elsewhere If:

  • You need legacy browser support: WireKit drops support for browsers below Chrome 111/Safari 16.4 (e.g., IE11, older Android).
  • Your app uses non-Livewire frontend frameworks: WireKit is Livewire-first; integrating with React/Vue would require significant wrapper work.
  • You require highly customized animations: While WireKit includes <x-wirekit::reveal>, complex animations (e.g., GSAP) would need custom implementation.
  • You’re building a static site: WireKit’s Alpine.js/Livewire dependencies make it unsuitable for Jamstack or pure HTML/CSS projects.
  • Your team prefers a different styling approach: WireKit enforces Tailwind CSS v4 and CSS variables; overriding this would require rewriting styles.
  • You need enterprise-grade support: With 2 stars and 0 dependents, WireKit lacks a commercial backing (e.g., no SLAs, security patches on a slower cadence than Laravel core).

How to Pitch It (Stakeholders)

For Executives:

"WireKit lets us ship Laravel-powered UIs 30% faster with zero design debt."

  • Problem: Building consistent UIs in Laravel is slow—teams spend cycles reinventing buttons, modals, and forms.
  • Solution: WireKit is a pre-built, Laravel-native UI library that:
    • Cuts development time by 30% for dashboards, admin panels, and marketing sites (e.g., <x-wirekit::kanban> for task boards, <x-wirekit::hero> for landing pages).
    • Reduces technical debt with built-in accessibility, dark mode, and Livewire reactivity—no custom JavaScript or CSS hacks.
    • Enforces brand consistency via a theming system (e.g., one-line color overrides in app.css).
  • ROI:
    • Faster time-to-market for internal tools (e.g., customer portals, reporting).
    • Lower maintenance costs by standardizing on a single, well-tested component library.
    • Scalable design system that grows with your product (e.g., add <x-wirekit::chart> for analytics dashboards).
  • Risk: Minimal—WireKit is MIT-licensed, Laravel/Livewire-aligned, and backed by a growing (if small) community.

For Engineering Leaders:

"WireKit replaces 50% of our custom UI components with a battle-tested, Livewire-first library."

  • Key Benefits:
    • Livewire + Alpine.js Integration: Components like <x-wirekit::modal> handle interactivity without custom JS—just declare slots and props.
    • CLI Tooling: Scaffold pages or fork components in seconds:
      php artisan wirekit:make page:dashboard --base=app-shell
      
    • Theming System: Override colors/spacing via CSS variables (e.g., --color-wk-accent) or publish custom Blade views.
    • AI/IDE Support: Export component schemas (wirekit:export-json) for autocomplete or documentation generation.
  • Migration Path:
    • Start with high-impact components (e.g., replace custom modals/dropdowns first).
    • Use wirekit:verify to diagnose integration issues early.
  • Trade-offs:
    • Lock-in to Tailwind CSS v4 and modern browsers (no legacy support).
    • Livewire dependency: Not suitable for non-Livewire frontend stacks.

For Developers:

"WireKit gives you Tailwind + Livewire superpowers with zero boilerplate."

  • Why It’s Better Than Alternatives:
    Feature WireKit Bootstrap/Tailwind UI Custom Components
    Livewire Reactivity ✅ Built-in (e.g., wire:model) ❌ Manual JS ❌ Manual JS
    Dark Mode ✅ Auto-switching CSS vars ❌ Manual toggle ❌ Manual
    Accessibility ✅ Built-in (e.g., aria-label) ⚠️ Partial ❌ Manual
    • No utility-class soup: Components are self-contained (e.g., <x-wirekit::button> includes all hover/focus states).
  • Getting Started:
    composer require pushery/wirekit
    
    @wirekitStyles
    <x-wirekit::button variant="primary">Save</x-wirekit::button>
    @wirekitScripts
    
  • Pro Tips:
    • Use php artisan wirekit:show button to inspect props/slots.
    • Theming tip: Override --color-wk-accent in app.css for brand consistency.
    • For complex forms, pair with Livewire’s validation (
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
ilhamsyabani/laravel-volt-starter
thethunderturner/filament-latex
ghostcompiler/laravel-querybuilder
webrek/laravel-telescope-mongodb
anousss007/blatui
zatona-eg/zatona-eg-api
cocosmos/filament-sticky-save-bar
patrickbussmann/oauth2-apple
3brs/enterprise-security-bundle
anousss007/vigilance
supportpal/eloquent-model
ardenexal/fhir-models
laravel-at/laravel-image-sanitize
romalytar/yammi-audit-log-laravel
ardenexal/fhir-validation
arshaviras/weather-widget
laravel-chronicle/core
sunchayn/nimbus
daikazu/eloquent-salesforce-objects
unseen-codes/chat