Download the PHP package dot-env-it/laravel-calendar without Composer
On this page you can find all versions of the php package dot-env-it/laravel-calendar. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download dot-env-it/laravel-calendar
More information about dot-env-it/laravel-calendar
Files in dot-env-it/laravel-calendar
Package laravel-calendar
Short Description A high-performance FullCalendar wrapper for Laravel.
License MIT
Informations about the package laravel-calendar
DotEnv Calendar for Laravel
A high-performance, reactive calendar suite for Laravel applications.
Built on the robust FullCalendar 6 core and powered by Livewire and Alpine.js, this package provides a seamless bridge between your Eloquent models and a sophisticated frontend schedule. Transform any database record into a calendar event with zero boilerplate and maintain a professional, desktop-grade user experience on your Dashboard.
🚀 Key Capabilities
- Eloquent-to-Calendar Mapping: Seamlessly integrate any model using the
HasCalendarEventstrait. You can add multiple model's events by just addingHasCalendarEventstrait. - Livewire Reactivity: Real-time state synchronization; your calendar reflects database changes without a single page refresh.
- Professional Grid Engine: Full support for
dayGridMonth,timeGridWeek, andlistWeeklayouts. - Intelligent Smart Filtering: Integrated filtering that automatically manages visibility based on your data density.
- Interactive Persistence: Native drag-and-drop support for rescheduling, with automatic database persistence.
- Dynamic UI Orchestration: Support for custom event prefixes, mapping of custom color attributes, and deep-linking to specific module resources.
Become a sponsor 
Your support allows me to keep this package free, up-to-date and maintainable. Alternatively, you can spread the word!
📦 Installation
🛠️ Implementation Guide
1. Configure Your Model
Apply the trait and define the calendar_fillable schema. You can map color to a standard database column or a custom attribute (Accessor) for dynamic styling or class to add bootstrap/tailwind class.
2. Frontend Dependencies
Ensure your application layout includes the industry-standard Select2 and FullCalendar 6 assets to power the interactive components.
🖥️ Production Usage
Deploy the calendar component directly into your Dashboard or any administrative view:
Conditional Filtering (Advanced)
To control which records appear on the calendar (e.g., only active tasks or user-specific events), you can use two primary methods:
A. Using Global Scopes
Since the calendar fetches events via your Eloquent models, applying a Global Scope will automatically filter the events displayed.
B. Using applyCalendarFilters
For more control—or to apply filters specifically to the calendar without affecting the rest of your application—you can define an applyCalendarFilters method in your model. The package will automatically detect and call this method when fetching events.
- Scoped Queries: Use standard Laravel Global Scopes or the dedicated
applyCalendarFiltersmethod to ensure users only see the data they are authorized to view.
Note: Using applyCalendarFilters is the recommended approach if you want to display a subset of data on the calendar (like "Upcoming Deadlines") while keeping the model's default behavior untouched elsewhere in your app.
Smart Filtering Logic
The component features an intelligent filtering system driven by your configuration and data:
- Automatic Hiding: The filter UI will automatically hide itself if only one model type is registered (preventing redundant UI elements).
- Global Toggle: Enable or disable the filtering capability globally via the configuration file.
- Manual Override: Force the filter state at the component level:
⚙️ Global Configuration
Publish and refine the config/laravel-calendar.php file to align the calendar with your organization’s operational settings.
⌨️ Developer Events
Leverage custom browser events to integrate the calendar with your application's wider notification ecosystem:
dot-env-calendar:refreshed: Dispatched upon successful data synchronization.dot-env-calendar:create-new-event: Dispatched upon day clickdot-env-calendar:view-event-details: Dispatched upon event click with eventIddot-env-calendar:event-updated: Dispatched following successful database update via drag-and-drop.
📄 License
The MIT License (MIT). For further details, please consult the License File.