guava/calendar

Adds support for vkurko/calendar to Filament PHP.
440,754 312
Install
composer require guava/calendar
Latest Version:3.2.2
PHP:^8.2
License:MIT
Last Updated:Jul 29, 2026
Links: GitHub  ·  Packagist
Maintainer: Skrypt

calendar Banner

Adds support for vkurko/calendar to Filament PHP.

Latest Version on Packagist Total Downloads

This package adds support for vkurko/calendar (free, open-source alternative to FullCalendar) to your FilamentPHP panels.

It allows you to create a widget with a calendar with support for multiple models and even resources you can group your events into. For example, you could have lessons (events) that are held in different rooms (resources).

Documentation

The full documentation is available at guava.cz.

Version compatibility

Filament version Plugin version Min. PHP version
3.x 1.x 8.1
4.x 2.x 8.1
5.x 3.x 8.2

Showcase

Showcase 01 Showcase 02

https://github.com/user-attachments/assets/fc7828ab-ccd2-4252-942a-9679af1e7687

https://github.com/user-attachments/assets/a4460084-e8a8-4b1b-9ccd-4d887895155b

Resources Screenshot 01

https://github.com/user-attachments/assets/a2641b40-9cbd-4c40-b360-7621caa86c40

https://github.com/user-attachments/assets/4996cc6a-7cee-4c7d-976a-60d3a4368f76

https://github.com/user-attachments/assets/7c2537d5-8acf-459f-a9a8-be02d4018448

Support us

Your support is key to the continual advancement of our plugin. We appreciate every user who has contributed to our journey so far.

While our plugin is available for all to use, if you are utilizing it for commercial purposes and believe it adds significant value to your business, we kindly ask you to consider supporting us through GitHub Sponsors. This sponsorship will assist us in continuous development and maintenance to keep our plugin robust and up-to-date. Any amount you contribute will greatly help towards reaching our goals. Join us in making this plugin even better and driving further innovation.

Installation

You can install the package via composer:

composer require guava/calendar

Make sure to publish the package assets using:

php artisan filament:assets

Finally, make sure you have a custom filament theme (read here how to create one) and add the following to your theme.css file:

This ensures that the CSS is properly built:

@source '../../../../vendor/guava/calendar/resources/**/*';

This is optional but highly recommended as it will apply styles to better fit with the (default) filament theme:

@import '../../../../vendor/guava/calendar/resources/css/theme.css';

The paths might be a little bit different if your theme.css is located in a non-standard path. Adjust accordingly.

Usage

Create a widget extending CalendarWidget, return some events, and add it to a Filament page:

use Guava\Calendar\Filament\CalendarWidget;
use Guava\Calendar\ValueObjects\CalendarEvent;
use Guava\Calendar\ValueObjects\FetchInfo;
use Illuminate\Support\Collection;

class MyCalendarWidget extends CalendarWidget
{
    protected function getEvents(FetchInfo $info): Collection|array
    {
        return [
            CalendarEvent::make()
                ->title('My first event')
                ->start(now())
                ->end(now()->addHours(2)),
        ];
    }
}

Add the widget to any Filament page you like, such as your Dashboard, and you're done!

For everything else, including multiple models, resources, interactivity (drag & drop, resize, context menus), custom event/resource content, actions and authorization, see the full documentation at guava.cz.

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.

Related Packages

guava/filament-icon-select-column

Adds a icon select (via dropdown) column to your filament tables.

11,389 46
mrshanebarron/calendar

Calendar component for Laravel - supports Livewire and Vue

13 0
rogos/laravel-calendar

Laravel 4 Flexible Calendar

7 1
skecskes/calendar

Laravel 5 Flexible Calendar

4,321 11
scubaclick/l4calendr

CalendR integration into Laravel 4

892 13