Download the PHP package da-sie/livewire-calendar without Composer
On this page you can find all versions of the php package da-sie/livewire-calendar. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download da-sie/livewire-calendar
More information about da-sie/livewire-calendar
Files in da-sie/livewire-calendar
Package livewire-calendar
Short Description Laravel Livewire calendar component with month/week/day views, drag-and-drop, multi-day events, and accessibility
License MIT
Homepage https://github.com/da-sie/livewire-calendar
Informations about the package livewire-calendar
Livewire Calendar
A Laravel Livewire calendar component with month, week, and day views. Supports multi-day events, drag-and-drop, keyboard navigation, and full accessibility (ARIA).
Fork of asantibanez/livewire-calendar, modernized for Livewire 4, Laravel 11-13, and PHP 8.2+.
Requirements
- PHP 8.2+
- Laravel 11, 12, or 13
- Livewire 4
- TailwindCSS (for default styling)
Installation
Quick Start
Create a Livewire component that extends LivewireCalendar:
Include in a Blade view:
Add the drag-and-drop scripts after Livewire's scripts:
Event Format
Events are keyed arrays with these fields:
| Key | Type | Required | Description |
|---|---|---|---|
id |
mixed | yes | Unique identifier |
title |
string | yes | Display title |
description |
string | no | Description text |
date |
Carbon/string | yes | Start date |
date_end |
Carbon/string | no | End date (inclusive) for multi-day events |
Multi-Day Events
Add date_end to make an event span multiple days:
Multi-day events display across all days in their range. The title shows on the start day;
continuation days show a compact indicator. Events without date_end behave as single-day events.
Loading multi-day events: If your events can start before the visible grid, use an overlap query:
View Modes
The calendar supports three view modes: month (default), week, and day.
Switching Views
Call setViewMode() from your component or a custom view:
Or from Blade via wire:click:
Navigation
| Method | Description |
|---|---|
goToPreviousMonth |
Navigate to previous month |
goToNextMonth |
Navigate to next month |
goToCurrentMonth |
Navigate to current month |
goToPreviousWeek |
Navigate to previous week |
goToNextWeek |
Navigate to next week |
goToPreviousDay |
Navigate to previous day |
goToNextDay |
Navigate to next day |
Use before-calendar-view or after-calendar-view to add navigation controls.
Filtering Properties
Use these properties in events() to filter your data:
| Property | Description |
|---|---|
$this->startsAt |
Start of the visible period |
$this->endsAt |
End of the visible period |
$this->gridStartsAt |
Start of the grid (may include adjacent days) |
$this->gridEndsAt |
End of the grid |
In day mode, gridStartsAt and gridEndsAt match the single visible day.
In week mode, they match the visible week.
Customization
Component Props
Publishing Views
Published views receive these variables:
day view: $componentId, $day, $dayInMonth, $isToday, $events, $viewMode
event view: $event, $isStart, $isEnd, $eventClickEnabled, $dragAndDropEnabled
Publishing Assets
To use the JS file directly (instead of @livewireCalendarScripts):
Then include manually:
Interactions
Override these methods in your component:
Multi-Day Drag Source
For multi-day events, you may need to know which day segment was dragged.
Listen for the calendar-event-dropped Livewire event:
Accessibility
The calendar includes full ARIA support:
role="grid"on the calendar,role="gridcell"on day cells,role="columnheader"on day-of-week headersaria-labelon days (e.g. "April 8, 2026") and events- Keyboard navigation: Arrow keys move between day cells, Enter/Space triggers day click
- Event keyboard: Enter/Space triggers event click when enabled
aria-live="polite"region for screen reader announcementsrole="button"andtabindex="0"on clickable events only
Testing
Credits
- Andres Santibanez (original author)
- All Contributors
License
MIT. See LICENSE.md.
All versions of livewire-calendar with dependencies
illuminate/support Version ^11.0|^12.0|^13.0
livewire/livewire Version ^4.0