A April UI / Laravel Blade components

UI components crafted for Artisans

A component library for building product interfaces with the Laravel elegance you already know. Inspired by shadcn/ui, built for Blade and Livewire.

MIT licensed
an application surface Blade + Livewire
April UI product dashboard example

Why April

A UI kit that knows where it lives.

Laravel was made with developers in mind. April is an extension of that idea.

Flux has set a high bar for polished Livewire interfaces, and it is worth knowing about if you are building with Laravel.

April is a free, MIT-licensed alternative for teams who want a package-first Blade workflow. It is not a replacement for Flux. It is another good way to build, with a different set of trade-offs.

01

Make the nice thing the easy thing.

Write <april:button> without an x- prefix. Keep your templates readable, local, and easy to change.

02

Do whatever you want back there.

Use Alpine for browser interactions, Livewire for server state, or both. April gives you a polished surface without dictating your application architecture.

03

Publish only the exception

Package views stay in vendor/ until you need to own the markup. The Laravel way, with nicer commands.

04

Style with data slots

Restyle the parts you need with semantic tokens and data-slot attributes. Keep the defaults, change what matters.

What is in the box

The stuff your next screen probably needs.

Start small. Bring in the bigger pieces when your route calls for them.

See all components

Primitives

Button, card, badge, avatar

The small pieces that make an interface feel like an interface.

Forms

Input, select, editor, date picker

Controls for real forms, without the ceremony.

Overlays

Dialog, sheet, popover, command

The useful stuff that appears, disappears, and gets out of the way.

Data

Data table, chart, calendar

Tables, charts, and calendars that have somewhere to go.

Navigation

Sidebar, breadcrumb, tabs

Keep people oriented when the app gets bigger.

Blocks

Dashboards, auth, pricing

A head start for common screens, because blank files are rude.

A package-first workflow

Close to Laravel. Open to your decisions.

Install with Composer, render with Blade, connect your data, and publish a view only when you need to own the markup. No ceremony required.

artisan commandsapril-ui
php artisan april:list
php artisan april:publish button
php artisan april:update --diff
Published files go to resources/views/vendor/april/components.

For the next screen

Keep your application code in charge.

Read the docs, pick a component, and build the screen your Laravel app was already asking for.