Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Iranian Date Picker

Iranian Date Picker Laravel Package

shayanys/iranian-date-picker

A Laravel package that adds an Iranian (Jalali/Persian) date picker to your forms. It offers a simple, ready-to-use picker for selecting Persian dates, making it easier to build localized apps and provide a natural date-selection experience for Persian-speaking users, with easy integration into Lara...

View on GitHub
Deep Wiki
Context7

shayanys/iranian-date-picker is a Laravel package that adds a ready-to-use Persian (Jalali) date picker to your forms. It handles conversion between Gregorian and Iranian calendars, so you can collect and store dates without writing manual conversion logic.

  • Blade component with a Persian calendar UI
  • Automatic Gregorian ⇄ Jalali conversion
  • Configurable date format, locale, and selectable ranges
  • Built-in validation for Iranian dates
  • Compatible with standard forms and Livewire
Frequently asked questions about Iranian Date Picker
How do I install and register shayanys/iranian-date-picker in a Laravel Filament panel?
Require the package with Composer, register the plugin in your PanelProvider, then swap your existing Filament DatePicker import for the package's field class inside the forms() schema. The integration surface is a single field type plus plugin registration, so your Eloquent models, migrations and validation rules are untouched. Because the last release predates Filament 3 stable, expect to patch Composer constraints or vendor a fork rather than getting a clean install.
Does IranianDatePicker support Filament 3 or Filament 4?
The last release is from April 2023, which predates Filament 3's stable release and long predates Filament 4. A plugin of that vintage typically pins filament/filament and illuminate/* constraints that conflict with a current install, so Composer may refuse to resolve. Read the package's composer.json constraint first, since that is a five-minute disqualifier before you invest any integration time.
Does the package store Gregorian dates in the database or Jalali strings?
The correct design, and the one you should verify in the source, is to render Jalali in the UI while persisting Gregorian dates so the rest of your app and database stay portable. Check whether the field converts values during dehydrate/save or writes the raw displayed Persian string. Storing Jalali strings would lock your schema to the picker and break queries, sorting and date casting.
How should Jalali to Gregorian conversion be implemented server-side?
Use a maintained conversion library such as morilog/jalali or a Carbon Jalali integration rather than hand-rolled arithmetic. The Iranian 33-year leap cycle and timezone day boundaries are exactly where off-by-one-day errors hide, and they look fine in the UI. If the package ships its own hand-rolled conversion, treat that as a red flag and audit or replace it before trusting production data.
How do I customize the Persian date picker options like format and min or max dates?
The field is intended as a drop-in DatePicker replacement and typically exposes fluent methods for common options such as display format and minimum or maximum dates. Review the field class to see which methods it actually supports before designing around them. For anything exotic you may need to patch the underlying JavaScript picker options directly.
Can I use the Iranian date picker outside Filament with the Blade component?
The package ships a Blade component that renders the Persian picker outside a Filament schema, which helps for plain Blade forms. You still need to handle asset registration, whether through Filament::serving or by publishing the package assets. If your app is not Filament-based at all, a standalone Jalali conversion library plus a plain JavaScript datepicker is the simpler route.
How does IranianDatePicker handle timezones and day-boundary dates?
Confirm whether conversion happens in the application timezone, in UTC, or in browser-local time before you rely on it. Test entries around 23:00 to 01:00 local and around leap days, because those are where a wrong date silently shifts by one day. A date that renders correctly but persists off by a day is the highest-severity risk with any Jalali picker.
Is shayanys/iranian-date-picker still maintained and safe for production?
It has a single maintainer, roughly 24 stars and zero dependents, so there is effectively no field-tested usage signal from the ecosystem. The last release was April 2023, which is one to two Filament majors behind given Filament's annual breaking releases. Budget for this as a fork-and-vendor exercise, and check the maintainer's responsiveness on GitHub issues before committing.
What are the alternatives if this package does not support my Filament version?
Your options are a community fork, a manual patch of the plugin's composer.json and namespace or API usage, or dropping the plugin entirely. The standalone path is a maintained Jalali conversion library on the server plus a plain JavaScript Persian datepicker registered as a custom Filament field asset. That keeps the conversion logic testable even if you later swap the widget.
Does the picker support datetime fields, and will its JS assets work with Vite?
Persian date pickers usually bundle a JavaScript library such as persian-datepicker and publish it through Filament's asset registration, and Filament's asset pipeline changed across majors. The widget may render unstyled or non-functional even when PHP-side registration succeeds, so test the built assets on your target Filament version. Also verify whether the field is date-only or actually handles datetime and time components before promising time input to users.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections