تطبيق أخبار متقدم يتيح للمستخدمين متابعة أحدث الأخبار العالمية والمحلية لحظة بلحظة. تم بناء التطبيق باستخدام Flutter مع اتباع منهجية الـ Clean Architecture لضمان فصل تام بين منطق العمل (Business Logic) والواجهات، مما يجعل الكود قابلاً للاختبار (Testable) وسهل الصيانة.
المميزات التقنية المطبقة:
بنية المشروع (Architecture): تقسيم المشروع إلى ثلاث طبقات أساسية (Data, Domain, Presentation) لتحقيق أقصى درجات التنظيم وفصل المسؤوليات.
إدارة الحالة (State Management): استخدام Cubit لإدارة حالات التطبيق المختلفة (Loading, Success, Error) بشكل خفيف وفعال.
نظام التنقل (Routing): الاعتماد على Go_Router لإدارة التنقل بين الشاشات، مما سهل التعامل مع الـ Deep Linking والـ Declarative Routing.
التعامل مع الـ API: استخدام مكتبة Dio لجلب الأخبار من مصادرها، مع إعداد Interceptors احترافية للتعامل مع الـ Headers والأخطاء.
التخزين المحلي (Local Storage): استخدام Shared Preferences لحفظ تفضيلات المستخدم (مثل الوضع الليلي أو حفظ الأخبار المفضلة للقراءة لاحقاً).
تجاوب الواجهات (Responsiveness): استخدام ScreenUtils لضمان ظهور واجهات التطبيق والخطوط بشكل متناسق ومثالي على جميع أحجام شاشات الهواتف.
التقنيات (Tech Stack):
Framework: Flutter (Dart).
Design Pattern: Clean Architecture.
State Management: Cubit.
Navigation: Go_Router.
Networking: Dio.
Persistence: Shared Preferences.
UI: ScreenUtils.