Shared foundation for the Wire ecosystem - traits, actions, modals, notifications, widgets, audit logging, icons, and colors.
- PHP 8.2+
- Laravel 10, 11, or 12
- Livewire 3.x
Wire Core is typically installed as a dependency of wire-forms or wire-table. You don't usually install it directly:
composer require nyoncode/wire-coreWire Core's Blade components (icons, badges, buttons, dropdowns, modals, notifications) use Tailwind CSS classes. Add the package views to your Tailwind content configuration:
Tailwind 3 (tailwind.config.js):
export default {
content: [
// ... your app paths
'./vendor/nyoncode/wire-core/resources/views/**/*.blade.php',
],
}Tailwind 4 (resources/css/app.css):
@source "../../vendor/nyoncode/wire-core/resources/views";Wire Core uses inline Alpine.js directives (included via Livewire 3). No separate Alpine installation needed.
Shared traits used by Actions, Columns, Fields, and other components:
HasColor– Tailwind CSS color class managementHasIcons– SVG icon rendering with 50+ built-in iconsHasVisibility– Conditional visibility, permissions, disabled stateHasDynamicProperties– Closure-based dynamic properties (label, color, icon per record)HasKeyboardShortcut– Keyboard shortcut support with Alpine.js integrationHasLifecycle– Before/after hooks with halt supportHasLoadingState– Loading indicators, debounce, timeoutHasModal– Modal/confirmation dialog configurationHasButtonStyles– Button CSS class generation
Complete action system for row, bulk, and header actions:
Action,BulkAction,HeaderAction– Action typesActionGroup– Dropdown groupingActionHalt– Pipeline halt with modalDeleteAction,EditAction,ViewAction– Pre-built actionsModalStep,ModalFooterAction– Multi-step wizard support
Pluggable notification system with three built-in drivers:
SessionDriver– Laravel session flash (default)LivewireEventDriver– Livewire browser eventsFlasherDriver– PHP Flasher integration
Reusable modal primitives for actions and custom UI:
- Confirmation dialogs
- Slide-overs
- Multi-step wizards
Dashboard building blocks:
- Stats overview widgets
- Chart widgets
- Table widgets
- Custom Blade-backed widgets
Application and package extension points:
- Plugin lifecycle with
register()andboot() - Table and action macros
- Hook callbacks
- Column and filter type registries
- Query pipe registry
Optional audit logging for Eloquent model changes and table-related events:
HasAuditablemodel traitAuditEntrymodel andaudit_logsmigrationAuditTrailActionrow action for tablesAuditLogger::withoutAuditing()for imports and maintenance jobs
Publish the config file:
php artisan vendor:publish --tag=wire-core-configPublish audit migrations when you use the audit log:
php artisan vendor:publish --tag=wire-core-migrations
php artisan migrate| Document | Description |
|---|---|
| Core Foundation | Shared traits, icons, colors, and Blade helpers |
| Actions | Row, bulk, header actions, and action groups |
| Notifications | Notification value objects and drivers |
| Modals | Confirmations, slide-overs, and wizards |
| Widgets | Dashboard widgets |
| Plugins | App and package extension points |
| Audit Log | Audit setup and usage |
| Configuration | Config files and environment variables |
MIT