تفاصيل العمل

تطبيق Rick and Morty Viewer

تطبيق بسيط مصمم باستخدام Flutter يعتمد على واجهة برمجة التطبيقات (API) الخاصة بـ Rick and Morty لعرض الشخصيات وصفاتهم بطريقة أنيقة وتفاعلية. يتميز التطبيق باستخدام تقنيات حديثة لتحسين الأداء وتجربة المستخدم.

الميزات الرئيسية:

عرض الشخصيات (Grid/List View):

يتم عرض شخصيات المسلسل باستخدام شبكة أو قائمة أنيقة مع صورهم وأسمائهم.

التقنية المستخدمة: تصميم واجهات باستخدام GridView وListView.

البحث (Search):

يمكن للمستخدمين البحث بسهولة عن شخصية معينة من خلال اسمها.

التقنية المستخدمة: مربع بحث ديناميكي مدمج مع التحكم بالحالة باستخدام Bloc وCubit.

وضعية العمل دون اتصال (Flutter Offline):

يدعم التطبيق التفاعل حتى في حالة انقطاع الاتصال بالشبكة.

التقنية المستخدمة: مكتبة flutter_offline لتحديد حالة الشبكة.

App Bar تفاعلي باستخدام Sliver:

شريط تطبيق مرن يتغير حجمه ديناميكيًا عند التمرير.

التقنية المستخدمة: SliverAppBar لتقديم تجربة واجهة مستخدم احترافية.

الصور المخزنة مؤقتًا (Cached Images):

يتم تحميل الصور الشخصية للشخصيات باستخدام مكتبة CachedNetworkImage لضمان سرعة العرض وتقليل استهلاك البيانات.

إدارة الحالة (Bloc & Cubit):

يتم التحكم في تدفق البيانات واستجابة واجهة المستخدم باستخدام نموذج إدارة الحالة Bloc، مما يجعل الكود منظمًا وسهل الصيانة.

كيف يعمل التطبيق:

جلب البيانات من API:

يتم استخدام مكتبة DIO لإجراء طلبات HTTP لجلب بيانات الشخصيات من واجهة Rick and Morty API.

عرض البيانات:

يتم عرض الشخصيات في شبكة أو قائمة مع صورهم وأسمائهم.

عند النقر على شخصية معينة، تُعرض تفاصيلها مثل النوع، الحالة، والموقع.

التفاعل مع المستخدم:

مربع البحث يسمح للمستخدم بتصفية النتائج بسهولة.

يدعم العمل في وضعية عدم الاتصال باستخدام البيانات المخزنة مؤقتًا.

حفظ الصور مؤقتًا:

الصور تُحفظ محليًا لضمان سرعة في الأداء وتقليل استهلاك البيانات عند إعادة التشغيل.

التقنيات المستخدمة:

لغة البرمجة: Dart.

تقنية الواجهة: Flutter.

مكتبات رئيسية:

DIO: لجلب البيانات من الـ API.

flutter_offline: للتحقق من حالة الشبكة.

cached_network_image: لتحميل الصور وتخزينها مؤقتًا.

Bloc & Cubit: لإدارة الحالة.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
تاريخ الإضافة
تاريخ الإنجاز
المهارات