nawasara/ui
Nawasara UI
UI components, layouts, theme, and shared Livewire concerns used by every package in the Nawasara superapp framework.
What's inside
Blade components (<x-nawasara-ui::*>)
| Component | Purpose |
|---|---|
button |
Variant + color + size system, optional icon slot, permission gate |
table |
Standardised table shell with title, action slot, and search |
modal |
Alpine-driven modal with header/footer slots, opened via modal-open:{id} event |
modal-confirm-delete |
Pre-built confirmation modal |
dropdown-menu-action |
Per-row action dropdown with permission filtering |
filter-bar |
Search input + filter chips slot, used above every list page |
filter-dropdown |
Wired filter dropdown that resets pagination |
filter-chip |
Removable chip showing the active filter value |
bulk-action-bar |
Shows up when rows are selected; hosts bulk action buttons |
skeleton, skeleton-stats, skeleton-table |
Loading placeholders that match the real layout |
dark-mode-toggle |
Sun/moon toggle wired to a session preference |
workspace-switcher |
Top-level workspace dropdown for grouped sidebar navigation |
brand-logo |
Renders the configured brand logo with a height variant |
page.title, page.container |
Layout helpers for consistent page structure |
form.input, form.select, form.textarea, form.checkbox, form.label |
Themed form primitives |
Layouts
layouts.app— main authenticated layout with sidebar + topbar + toasterlayouts.guest— login / public layout
Livewire concerns
Nawasara\Ui\Livewire\Concerns\HasBrowserToast— gives any Livewire componenttoastSuccess / toastError / toastWarning / toastInfomethods that fire dual-channel (Livewire event + JS payload) so toasts always show, even in AJAX-only requests where session flash never reaches the page
Services
WorkspaceManager— resolves the active workspace from the request URL, merges menu entries from every package that declares the sameworkspacekey, and exposesaccessible()for permission-filtered nav
Installation
composer require nawasara/ui
Auto-discovered. Most consumers will register Tailwind to scan this package's views:
// tailwind.config.js
content: [
'./resources/**/*.blade.php',
'./vendor/nawasara/*/resources/**/*.blade.php',
],
Author
Pringgo J. Saputro <odyinggo@gmail.com>
License
MIT
Related Packages
robsontenorio/mary
Gorgeous UI components for Livewire powered by daisyUI and Tailwind
608,785
1,470
destech-hasar-cozumleri-a-s/larabite
Complete Flowbite component library for Laravel with Blade components, Tailwind...
673
0
artisanpack-ui/livewire-ui-components
A Livewire UI component library for the TALL stack, forked from MaryUI and adapt...
1,174
1
rajeshwar/unified-ui-laravel
A scalable, token-driven Blade component library for Laravel — 75+ components bu...
8
0