هذه الحزمة مفتوحة المصدر مكتوبة بلغة Dart، وتوفر مجموعة قوية وسهلة الاستخدام من الويدجات (Widgets) لبناء جداول زمنية تفاعلية في تطبيقات Flutter، سواء كانت رأسية أو أفقية.
✨ الميزات الرئيسية
· مكونات ويجيت جاهزة: كل جزء في الجدول الزمني (المؤشر، الموصل، العقدة) هو ويجيت يمكن دمجه وتخصيصه بسهولة.
· اتجاهات متعددة: تدعم الجداول الزمنية الرأسية والأفقية.
· محاذاة مرنة للمحتوى: يمكن عرض المحتوى بطرق مختلفة (basic، reverse، alternating).
· قابلية تخصيص عالية: من خلال السمات (Themes) يمكن التحكم في مظهر جميع المكونات بشكل مركزي.
· دمج سهل: تعمل بشكل طبيعي مع بقية ويجيتات Flutter مثل Row وColumn وListView.
⚠️ ملاحظة مهمة حول حالة التطوير
يذكر المطور بوضوح في بداية المستودع تحذيرًا (Caveat):
"هذه الحزمة في مرحلة مبكرة. لم يتم إجراء اختبارات كافية لضمان الاستقرار. قد تتغير بعض واجهات البرمجة (APIs)."
هذا يعني أنها مناسبة للاختبار والمشاريع التجريبية، وقد لا تكون مستقرة تمامًا للإنتاج على نطاق واسع دون اختبار دقيق.
🚀 مثال سريع للبدء
بعد إضافة الحزمة إلى ملف pubspec.yaml، يمكنك بناء جدول زمني بسيط بهذا الكود:
import 'package:timelines/timelines.dart';
// داخل دالة البناء (build)
Timeline.tileBuilder(
builder: TimelineTileBuilder.fromStyle(
contentsAlign: ContentsAlign.alternating,
contentsBuilder: (context, index) => Padding(
padding: const EdgeInsets.all(24.0),
child: Text('الحدث الزمني $index'),
),
itemCount: 10, // عدد الأحداث
),
)
باختصار، هذه الحزمة تملأ فراغًا عمليًا لمطوري Flutter، وتمكنك من إنشاء واجهات زمنية معقدة بجهد بسيط، مع ضرورة مراعاة أنها لا تزال قيد التطوير النشط.
https://github.com/chulwoo-park/timelines/
