Getting Started
Components
- Accordion
- Alert
- Alert Dialog
- Aspect Ratio
- Attachment
- Avatar
- Badge
- Banner
- Breadcrumb
- Bubble
- Button
- Button Group
- Calendar
- Card
- Carousel
- Chart
- Checkbox
- Command
- Collapsible
- Combobox
- Context Menu
- Data Table
- Date Picker
- Dialog
- Dropdown Menu
- Editor
- Input
- Input Group
- Label
- Loading Spinner
- Native Select
- Popover
- Select
- Separator
- Sheet
- Sidebar
- Skeleton
- Slider
- Steps
- Switch
- Tabs
- Textarea
- Tooltip
Patterns
Button
Displays a button.
Component Code
<april:button>Button</april:button>
Component Code
<april:button>Button</april:button>
Button Link
The examples below also work with the button link component, which just uses an
a tag under the hood
Component Code
<april:button-link href="https://x.com/yungifez">Button</april:button-link>
Component Code
<april:button-link href="https://x.com/yungifez">Button</april:button-link>
Variant examples
The button component comes in multiple variants
Default
Component Code
<april:button>Button</april:button>
Component Code
<april:button>Button</april:button>
Secondary
Component Code
<april:button variant="secondary">Button</april:button>
Component Code
<april:button variant="secondary">Button</april:button>
Destructive
Component Code
<april:button variant="destructive">Button</april:button>
Component Code
<april:button variant="destructive">Button</april:button>
Outline
Component Code
<april:button variant="outline">Button</april:button>
Component Code
<april:button variant="outline">Button</april:button>
Ghost
Component Code
<april:button variant="ghost">Button</april:button>
Component Code
<april:button variant="ghost">Button</april:button>
Link
Component Code
<april:button variant="link">Button</april:button>
Component Code
<april:button variant="link">Button</april:button>
You can also use the none variant and style the button yourself
Size examples
The button component comes in multiple sizes
These examples use Blade Lucide icons.
Default
Component Code
<april:button>Button</april:button>
Component Code
<april:button>Button</april:button>
Icon
Component Code
<april:button size="icon" class="justify-center" variant="outline"> <x-lucide-chevron-right class="size-4" /></april:button>
Component Code
<april:button size="icon" class="justify-center" variant="outline"> <x-lucide-chevron-right class="size-4" /></april:button>
Small
Component Code
<april:button size="sm">Button</april:button>
Component Code
<april:button size="sm">Button</april:button>
Large
Component Code
<april:button size="lg" variant="outline"> <x-lucide-mail class="mr-2 size-4" /> Login with Email</april:button>
Component Code
<april:button size="lg" variant="outline"> <x-lucide-mail class="mr-2 size-4" /> Login with Email</april:button>
Overriding styles
A class you pass replaces the class it conflicts with, rather than sitting next to it.
size="icon" class="h-7 w-7"
gives you a 7 by 7 button, not a fight between two heights.
<april:button size="icon" class="h-7 w-7">...</april:button>
<april:button size="icon" class="h-7 w-7">...</april:button>
Publishing Views
Use the following commands to publish these views:
php artisan april:publish button
php artisan april:publish button
php artisan april:publish button-link
php artisan april:publish button-link
php artisan april:publish --all
php artisan april:publish --all