Bladewell vs WireUI
WireUI is a free set of Livewire and Alpine.js components, installed as a package. Bladewell is free, plain Blade with vanilla JavaScript, and copies its components into your app.
Side by side
WireUI's column is taken from its own docs, repository and Packagist page as they read on 7 October 2026, each linked as its source. Something out of date? Tell us.
| Topic | Bladewell | WireUI |
|---|---|---|
| Price and licence | Free, MIT licensed. Every component, no paid tier. | Free, MIT licensed. Source: Price and licence, WireUI |
| How you install it | php artisan bladewell:add copies each component's Blade, JavaScript and CSS into your app. You edit them like your own code; bladewell:add --installed updates the files you haven't changed and lists the ones you have. The package can stay a dev dependency. | A Composer package your app runs. It publishes its config and translations, not its views; the config lets you swap in component classes of your own. Source: How you install it, WireUI |
| Without Livewire | Yes: plain Blade. The same components work inside Livewire 3 and 4 components too. | No: it needs Livewire 3 and Alpine.js 3. Source: Without Livewire, WireUI |
| JavaScript it brings | One small vanilla JS module per component, bundled by your own Vite build. No Alpine, no Livewire, nothing from a CDN. | Alpine.js and Livewire. Its own bundle includes Floating UI, Day.js and Lodash. Source: JavaScript it brings, WireUI |
| CSS | Tailwind CSS 4.1 or later, with a theme file of colour tokens. | Tailwind CSS 3 or 4. Source: CSS, WireUI |
| Laravel and PHP | Laravel 12 or 13, PHP 8.3 or later. | Laravel 10 to 13, PHP 8.2 or later. Source: Laravel and PHP, WireUI |
| Date range picker | Yes, free. | No: a date and time picker with minimum and maximum dates. Source: Date range picker, WireUI |
| Data table | Yes: sorting, filters with option counts, row selection and pagination, run by your controller or Livewire component, with the URL kept in step. | Not part of WireUI; its docs point to Livewire PowerGrid. Source: Data table, WireUI |
| File upload | Yes, including direct upload with progress and retry. | No. Source: File upload, WireUI |
| Under a strict CSP | No inline scripts, onclick or style attributes, and no eval: nothing needs 'unsafe-inline' or 'unsafe-eval', and there's no nonce to set up. | Its scripts take a nonce. It runs on Alpine, whose standard build needs 'unsafe-eval'. Source: Under a strict CSP, WireUI |
| Accessibility | Keyboard support and ARIA in every component. Every example is checked with axe, light and dark, closed and open, on every change. | Not documented. |
| Latest release | 1.0.0, 9 October 2026. 42 components so far. | v2.6.0, 24 March 2026. Source: Latest release, WireUI |
Which to pick
WireUI, if
- You need a date picker that takes a time as well, in one field.
- You're still on Tailwind CSS 3, or on Laravel 10 or 11.
- Your app already uses WireUI and Alpine.
Bladewell, if
- You need a date range picker, a data table or a file upload.
- You'd rather not depend on Alpine or Livewire.
- You want to edit the components' markup directly, and still get updates.
- Your Content Security Policy has no 'unsafe-eval'.
Also compared: Flux, Mary UI, Blade UI Kit and BladewindUI.