Fila Calendar plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

Fila Calendar

Community

A polished inline calendar field for Filament forms and infolists with single, range, and multi-range selection.

Tags: Forms Form Field Infolist Entry
Supported versions:
5.x 4.x
Asmit Nepali avatar Author: Asmit Nepali

Package health

Beta

Automated checks of this plugin's Composer package

100 / 100
Security 100
Maintenance 100
Ecosystem 100
15 checks
  • Passed: GitHub Actions pinned to SHA
  • Skipped: GitLab CI includes pinned to SHA
  • Passed: Open security advisories
  • Passed: Dependabot PR responsiveness — No stale Dependabot PRs.
  • Skipped: Renovate MR responsiveness
  • Passed: Dependabot or Renovate configured
  • Passed: Dependency update cooldown configured
  • Passed: Provides a security policy
  • Passed: Abandoned or archived — No consulted source marks the package abandoned (packagist, github).
  • Passed: Commit and release recency — Active: last commit 0 days ago; last release 25 days ago.
  • Passed: composer.lock not committed by library composer.lock is absent from the released dist archive.
  • Passed: Dist archive is lean
  • Passed: Current Laravel version supported — Package dependencies resolve together with current Laravel 13.0.
  • Passed: Current PHP version supported — Constraint ^8.2 supports current PHP 8.5.
  • Skipped: Current Symfony version supported
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the filament/ namespace. Review the source and install at your own risk. Found malware or an unresolved security issue the author won't address? Report it .
Powered by Plumb Last scanned 1 week ago

Documentation

Fila Calendar

A polished inline calendar field for Filament forms and infolists. Supports single, range, multiple, and multi-range selection with a self-contained Alpine.js UI — no external calendar library required.

Latest Version PHP 8.2+ Laravel 11+ Filament 4+

#Features

  • Multiple selection modes — single, multiple, range, and multi-range
  • Form + infolistCalendarInput field and read-only CalendarEntry
  • Multi-month grid — column count per breakpoint with configurable month count
  • Date constraints — unavailable dates, weekend blocking, and min/max bounds
  • Reserved dates — mark days that are already booked with their own icon and tooltip, enforced server-side
  • Range hover preview — visual feedback while selecting a range
  • Smart range editing — deselecting a middle day splits the range instead of clearing it
  • Localization — calendar labels via ->locale('ja')
  • No extra dependencies — ships its own Alpine.js component and styles

#Requirements

  • PHP 8.2+
  • Laravel 11+ (whichever versions your Filament release supports)
  • Filament 4 or 5

#Installation

composer require asmit/fila-calendar
php artisan filament:assets

Import the package stylesheet into your Filament theme:

@import '../../vendor/asmit/fila-calendar/resources/css/fila-calendar.css';

#Development

If you symlink the package locally with a Composer path repository, see the development guide for the path-repository setup and theme import path.

#Usage

Add a calendar field to a Filament form:

use Asmit\FilaCalendar\Forms\Components\CalendarInput;
use Asmit\FilaCalendar\Support\CalendarMode;

CalendarInput::make('booking')
    ->mode(CalendarMode::MultiRange)
    ->months(12)
    ->calendarColumns(['sm' => 2, 'lg' => 3, 'xl' => 4])
    ->reservedDates(fn (): array => Booking::query()->pluck('date')->all())
    ->withToday()
    ->locale('ja');

Render saved dates as a read-only infolist entry:

use Asmit\FilaCalendar\Infolists\Components\CalendarEntry;
use Asmit\FilaCalendar\Support\CalendarMode;

CalendarEntry::make('booking')
    ->mode(CalendarMode::MultiRange)
    ->months(3)
    ->calendarColumns(3);

View Complete Documentation →

#Contributing

Contributions are welcome. Please see CONTRIBUTING.md before opening an issue or pull request.

#Security

If you discover a security issue, please review our Security Policy.

#Changelog

Please see CHANGELOG.md for recent changes.

#License

MIT License. See LICENSE.md for details.

The author

Asmit Nepali avatar Author: Asmit Nepali

I’m a senior full-stack engineer with 5+ years of experience building production-grade applications with Laravel. I’m passionate about the Laravel and Filament ecosystem, creating developer tools and packages, and pushing Filament beyond its usual boundaries. I’m also the creator of several Filament plugins and SaaS products, focused on building practical tools that make developers’ lives easier.

Plugins
5
Stars
388

From the same author