rmirandasv / shadlar
UI Component library for Laravel applications
Fund package maintenance!
rmirandasv
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Blade
pkg:composer/rmirandasv/shadlar
Requires
- php: ^8.4
- illuminate/contracts: ^11.0||^12.0
- livewire/livewire: ^3.6
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.8
- orchestra/testbench: ^10.0.0||^9.0.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-arch: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-phpunit: ^2.0
README
A minimalist Blade component library for Laravel applications, inspired by shadcn/ui. Shadlar provides a collection of customizable UI components built with Blade templates and Alpine.js for interactive functionality.
Features
- Blade Components: Native Laravel Blade components that integrate seamlessly with your application
- Alpine.js Integration: Interactive components powered by Alpine.js for client-side behavior
- Tailwind CSS: Styled with Tailwind CSS utility classes for easy customization.
- Composable: Build complex UIs by composing smaller components together
Installation
You can install the package via Composer:
composer require rmirandasv/shadlar
Publishing Assets
Publish the CSS assets to your application:
php artisan vendor:publish --tag="shadlar-assets"
This will copy the CSS file to resources/css/vendor/shadlar.css. Include it in your main CSS file or import it in your build process.
Publishing Views (Optional)
If you need to customize the component templates, you can publish the views:
php artisan vendor:publish --tag="shadlar-views"
Publishing Config (Optional)
Publish the configuration file:
php artisan vendor:publish --tag="shadlar-config"
Usage
Once installed, you can use any Shadlar component in your Blade templates:
<x-shadlar::button variant="primary" size="md"> Click me </x-shadlar::button> <x-shadlar::card> <x-shadlar::card-header> <x-shadlar::card-title>Card Title</x-shadlar::card-title> </x-shadlar::card-header> <x-shadlar::card-body> Card content goes here </x-shadlar::card-body> </x-shadlar::card>
Available Components
Shadlar includes a wide range of components:
- Layout: Card, Sidebar, Empty states
- Navigation: Breadcrumb, Navigation Menu, Pagination
- Forms: Input, Textarea, Select, Checkbox, Radio, Form Field
- Overlays: Dialog, Dropdown, Combobox
- Data Display: Table, Badge, Avatar, Alert
- Interactive: Button, Tabs, Accordion, Toggle
- And more...
Documentation
For complete documentation, including component APIs, examples, and customization guides, visit:
https://shadlar.ronaldmiranda.dev
Requirements
- PHP 8.4 or higher
- Laravel 11.0 or 12.0
- Livewire 3.6 or higher
- Alpine.js (for interactive components)
- Tailwind CSS (for styling)
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Security
If you discover any security-related issues, please email ronaldmirandasv@gmail.com instead of using the issue tracker.
Credits
- Ronald Miranda
- This package was created using the Spatie Laravel Package Skeleton
License
The MIT License (MIT). Please see License File for more information.