- How do I install ariaieboy/filament-jalali in a Laravel Filament project?
- Install it with Composer using composer require ariaieboy/filament-jalali, then publish any assets or config files if the package prompts you during installation. Because it is a presentation-layer plugin, you do not need to change your database schema or migrations. After installing, swap the standard Filament DatePicker and table date columns in your resources for the Jalali variants the package provides.
- Which Laravel and Filament versions does filament-jalali support?
- The package targets modern Laravel applications running Filament v3 or v4, but you should confirm the exact constraints in its composer.json before committing. Filament major versions are the real coupling here, so a package release may raise or drop a Filament constraint. Run composer why-not ariaieboy/filament-jalali against your locked Filament and PHP versions to see conflicts immediately.
- Does filament-jalali store dates as Jalali or Gregorian in the database?
- The package is designed as a display and input concern, so the recommended approach is to keep Gregorian dates in your database and let Jalali formatting happen at the UI layer. That keeps your queries, sorting, exports, and other integrations working with standard Carbon dates. Before upgrading to a new major version, verify that it has not changed persistence or JSON serialization behaviour.
- How do I add a Jalali date picker to a Filament form?
- Replace the standard Filament DatePicker or DateTimePicker component in your form schema with the Jalali equivalent supplied by the plugin. The field still binds to the same model attribute, so validation rules and casts stay unchanged. After swapping, manually test each date-bearing screen in both Persian and default locales to confirm input parsing behaves as expected.
- Can I display Shamsi dates in Filament table columns?
- Yes, the plugin provides Jalali-aware table columns so records render with Shamsi dates instead of Gregorian ones. You swap the usual TextColumn or date column for the Jalali variant inside your resource table definition. If you render dates across very large result sets, be aware that formatting runs per row, so test pagination performance on realistic data volumes.
- What breaking changes are in filament-jalali 3.0.0 compared to 2.2.0?
- The 3.0.0 release note contains no changelog body, only a compare URL, so the scope of breaking changes is not documented in the release artifact. Read the GitHub compare diff directly between 2.2.0 and 3.0.0 and write your own changelog before upgrading. Check specifically for renamed config keys, republished assets, changed field signatures, and any shift in how dates are persisted or serialized.
- Is ariaieboy/filament-jalali safe to use in production?
- It is a small, single-maintainer open-source package with a narrow blast radius because it only affects presentation and input of dates. The main risks are weak changelog discipline upstream and a bus factor of one, not runtime instability. Pin exact versions, assign an internal owner to track releases, and keep a revert path or a fork-ready posture.
- Will filament-jalali conflict with other Filament plugins?
- It should coexist with other Filament plugins since it is a leaf dependency that adds fields and columns rather than modifying core behaviour. The practical check is to run composer why-not ariaieboy/filament-jalali against every other Filament plugin in your project before committing. Watch for plugins that also extend date handling or pin a conflicting conversion library.
- How should I test a Jalali date picker across timezones and locales?
- Run your existing test suite plus a manual pass over every date-bearing screen after installing or upgrading the plugin. Regression-check with seeded Persian-locale users on staging, and cover boundary cases such as month ends, leap years, and timezone offsets. If your app uses multiple locales, confirm that switching locale changes only the display and not the stored value.
- What library does filament-jalali use for Gregorian to Jalali conversion?
- The package relies on a PHP Jalali conversion library as a transitive dependency to translate between Gregorian and Shamsi calendars. Conversion is arithmetic rather than I/O, so runtime overhead is negligible even at scale. When upgrading the plugin, check whether the underlying conversion library version or constraint changed, since that can affect edge-case output.