Releases: ghazanfaris/filament-persian
Release list
v1.0.4 — فونت سراسری خودکار
v1.0.4: Global font-family injection via plugin
v1.0.3 — فونت خودکار
حالا فونت خودکار اعمال میشود، نیازی به ->font() دستی نیست.
v1.0.2 — رفع renderHook در Plugin
🔧 رفع مشکل
- FilamentPersianPlugin حالا JS تقویم را درست تزریق میکند
- CSS سراسری هم از همان مسیر لود میشود
- Command Palette و اعداد فارسی خودکار فعال میشوند
علت مشکل نسخه 1.0.1:
- Packagist نسخه قدیمی را کش کرده بود (tag re-tag blocked)
- در نسخه 1.0.2 کد جدید از اول منتشر میشود
📦 نصب:
composer require sghazanfari/filament-persian:^1.0.2
v1.0.1 — کپی خودکار فونت و بهبود لود JS
🎨 بهبودها در این نسخه
✦ فونتها
- حالا داخل پکیج قرار دارند
- با filament-persian:install خودکار کپی میشوند
- با --force میتوان بازنویسی کرد
- با --no-fonts میتوان غیرفعال کرد
- پوشههای غیرفونت نادیده گرفته میشوند
✦ لود خودکار JS
- تقویم جلالی از طریق Plugin لود میشود
- Command Palette خودکار تزریق میشود
- اعداد فارسی خودکار فعال میشوند
- دیگر نیازی به renderHook دستی نیست
✦ رفع مشکل نسخهگذاری
- اضافه شدن version به composer.json
- امکان نصب از path repository
📦 نصب:
composer require sghazanfari/filament-persian:^1.0
🔗 لینکها:
Filament Persian v1.0.0 — اولین انتشار رسمی
🇮🇷 Filament Persian v1.0.0
کاملترین پکیج فارسیسازی Filament v5 — تقویم جلالی، RTL، اعتبارسنجی ایرانی، اعداد فارسی و ۱۰ قالب صفحه ورود.
اولین نسخه رسمی منتشر شد! 🎉
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✨ چه چیزی این نسخه دارد؟
📅 تقویم جلالی
- کامپوننت JalaliDatePicker برای فرمها
- ستون JalaliDateColumn برای جداول
- فیلتر JalaliDateFilter برای بازههای تاریخ
- Trait AutoJalaliDates برای تبدیل خودکار
- Macro withJalaliTimestamps برای جداول
- تقویم JS مستقل (بدون وابستگی خارجی)
✅ ۱۱ اعتبارسنجی ایرانی
- کد ملی با checksum استاندارد
- موبایل با پشتیبانی از +98, 0098, 98
- شبا با الگوریتم IBAN بینالمللی
- کد پستی ۱۰ رقمی
- شماره کارت بانکی با تشخیص بانک
- شناسه ملی حقوقی با checksum
- شماره اقتصادی ۱۴ رقمی
- پلاک خودرو ایران
- شماره بیمه تأمین اجتماعی
- کد بورسی ۱۱ رقمی
- شماره گذرنامه
🗺️ دادههای آماده ایران
- ۳۱ استان با مرکز و اسلاگ
- ۳۱۵ شهر مهم
- ۳۰ بانک با پیشوند کارت و کد شبا
- ۲۲ منطقه شهرداری تهران
- Select استان/شهر وابسته
- Command filament-persian:seed-cities
⏰ تعطیلات و ساعت کاری
- تعطیلات شمسی ثابت (نوروز، ۲۲ بهمن، ...)
- تعطیلات قمری (۱۴۰۳ تا ۱۴۱۰)
- تعطیلات هفتگی (جمعهها)
- ساعت کاری اداری قابل تنظیم از پنل
- محاسبه روز کاری بعدی/قبلی
🔢 اعداد و مبالغ فارسی
- PersianTextColumn برای متنهای عددی
- PersianMoneyColumn برای مبالغ
- PersianNumberInput با فرمت خودکار
- تبدیل خودکار ارقام در کل پنل
🔐 ۱۰ قالب صفحه ورود
- classic — گرادیانت رنگی
- minimal — ساده و تمیز
- split — دوستونه با تصویر
- glass — شیشهای مدرن
- gradient — تمام صفحه گرادیانت
- dark — تم تاریک
- neon — درخشان نئون
- corporate — رسمی شرکتی
- wave — با موج تزئینی
- pattern — الگوی هندسی
- پشتیبانی کامل از 2FA
- ویرایش متنها از پنل
🎨 ظاهر و UX
- RTL کامل همه کامپوننتها
- ۵ فونت فارسی: Vazirmatn, Estedad, Sahel, Samim, Shabnam
- ۲۰ رنگ آماده
- صفحه تنظیمات ظاهری با ۶ تب
- ۴ قالب آماده (اداری، فروشگاهی، شرکتی، مینیمال)
- Command Palette فارسی با Ctrl+K
📊 ویجت و نمودار
- کلاس انتزاعی PersianStatsWidget
- کلاس انتزاعی PersianChartWidget با محور جلالی
- Tooltip فارسی
🔍 جستجو
- HasPersianGlobalSearch با نرمالسازی ی/ک عربی
- جستجو در منوها و رکوردها
🖼️ پروفایل کاربر
- ویرایش نام، ایمیل، آواتار
- تغییر رمز عبور با تأیید
- نمایش آواتار در منوی کاربر
📖 مستندات داخلی
- ۱۳ فایل مستندات در پنل
- صفحه کامپوننتهای آماده با کد قابل کپی
- صفحه درباره کامل
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📦 نصب
composer require sghazanfari/filament-persian
مراحل نصب:
۱. نصب پکیج:
composer require sghazanfari/filament-persian
۲. اجرای دستور نصب:
php artisan filament-persian:install
۳. درج شهرهای ایران:
php artisan filament-persian:seed-cities
۴. بررسی نصب:
php artisan filament-persian:doctor
تنظیم فایل .env:
APP_LOCALE=fa
APP_FALLBACK_LOCALE=en
APP_TIMEZONE=Asia/Tehran
ثبت در Panel:
use Sghazanfari\FilamentPersian\FilamentPersianPlugin;
use Sghazanfari\FilamentPersian\Auth\Login;
public function panel(Panel $panel): Panel
{
return $panel
->default()
->id('admin')
->path('admin')
->login(Login::class)
->plugin(FilamentPersianPlugin::make());
}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 مثال سریع
use Sghazanfari\FilamentPersian\Forms\Components\JalaliDatePicker;
use Sghazanfari\FilamentPersian\Forms\Components\IranianMobileInput;
use Sghazanfari\FilamentPersian\Forms\Components\PersianNumberInput;
JalaliDatePicker::make('delivery_date')
->label('تاریخ تحویل')
->withTime(),
IranianMobileInput::make('customer_mobile')
->label('موبایل مشتری'),
PersianNumberInput::make('total')
->label('مبلغ کل')
->money('IRT'),
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📋 سازگاری
- PHP: 8.2+
- Laravel: 11, 12, 13
- Filament: 5.x
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔗 لینکها
- مستندات: https://github.com/ghazanfaris/filament-persian#readme
- گزارش مشکل: https://github.com/ghazanfaris/filament-persian/issues
- Packagist: https://packagist.org/packages/sghazanfari/filament-persian
- بحثها: https://github.com/ghazanfaris/filament-persian/discussions
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🙏 تشکر
از همه کسانی که باگ گزارش دادند، پیشنهاد دادند، یا مشارکت کردند.
مخصوصاً:
- تیم Filament برای فریمورک فوقالعاده
- Vazirmatn برای فونت زیبا
- تیم Spatie برای پکیجهای بینظیر
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📄 لایسنس
MIT License — آزاد برای استفاده شخصی و تجاری.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ساخته شده با ❤️ برای جامعه فارسیزبان
⭐ اگر این پکیج برایت مفید بود، در GitHub ستاره بده