عنوان المشروع: تطبيق الطبق اليومي (Daily Dish) - مساعد المطبخ الذكي لتخطيط الوجبات
ملخص المشروع:
تطبيق محمول متكامل (Android/iOS) تم تطويره باستخدام إطار عمل Flutter لمساعدة المستخدمين على حل مشكلة "ماذا أطبخ اليوم؟". يقوم التطبيق بدمج إدارة الوصفات الشخصية، وتتبع مخزون المطبخ، وتخطيط الوجبات الأسبوعية، وإنشاء قوائم التسوق الذكية تلقائياً في تجربة استخدام سلسة وفعالة.
المشكلة التي يعالجها المشروع:
تعاني العديد من الأسر من الحيرة اليومية في اختيار الوجبات، مما يؤدي إلى تكرار الأطباق، وإهدار المكونات، وقضاء وقت طويل في التخطيط والتسوق. يهدف هذا التطبيق إلى القضاء على هذه المشكلة عبر توفير نظام مركزي وذكي لإدارة كل ما يتعلق بالطبخ المنزلي.
الحل والمنهجية المتبعة:
قمت بتصميم وتطوير "الطبق اليومي" ليكون أكثر من مجرد كتاب طبخ رقمي. إنه نظام متكامل مبني على منطق واضح: تنظيم الوصفات، معرفة ما هو متوفر، التخطيط للمستقبل، وشراء ما ينقص فقط.
التقنيات المستخدمة:
إطار العمل: Flutter (للتطوير عبر المنصات بكود برمجي واحد).
لغة البرمجة: Dart.
إدارة الحالة (State Management): Riverpod (لإدارة حالة التطبيق بكفاءة وقابلية للتوسع، مع فصل الاهتمامات).
قاعدة البيانات المحلية: Isar Database (لضمان أداء فائق السرعة، والعمل دون اتصال بالإنترنت، وتخزين البيانات بشكل آمن على الجهاز).
التدويل (Localization): دعم كامل للغتين العربية والإنجليزية (L10N)، بما في ذلك التوافق مع واجهات RTL.
الهندسة المعمارية (Architecture): اتباع بنية نظيفة قائمة على فصل الميزات (Feature-First) لضمان سهولة الصيانة والتطوير المستقبلي.
أبرز الميزات التي قمت بتنفيذها:
كتاب الطبخ الرقمي (Digital Cookbook):
تنفيذ عمليات CRUD كاملة (إنشاء، قراءة، تحديث، حذف) للوصفات مع حفظ الصور محلياً على الجهاز لضمان الوصول السريع حتى بدون انترنت.
إدارة المخزون الذكية (Smart Pantry):
بناء نظام لتتبع المكونات المتوفرة في المطبخ.
تطوير ميزة "ماذا يمكنني أن أطبخ؟"، وهي خوارزمية تقوم بمطابقة المكونات المتوفرة مع مكونات الوصفات لتقديم اقتراحات ذكية وفورية.
مخطط الوجبات الأسبوعي (Weekly Planner):
تصميم واجهة مستخدم مرنة تتيح عرض الخطط اليومية والأسبوعية، مع سهولة إضافة الوجبات من كتاب الطبخ إلى أي يوم بلمسة زر.
قائمة التسوق التلقائية (The Killer Feature):
هذه هي الميزة الأكثر تعقيداً وقيمة. قمت بتطوير منطق برمجي يقوم تلقائياً بإنشاء قائمة تسوق بناءً على المعادلة التالية:
(مكونات الوجبات المخططة) - (المكونات المتوفرة في المخزن) = قائمة التسوق النهائية.
يتم عرض القائمة بشكل منظم ومقسم حسب الفئات (خضروات، بروتينات، إلخ) لتسهيل عملية التسوق.
النسخ الاحتياطي والاستعادة (Backup & Restore):
إدراكاً لأهمية بيانات المستخدم، قمت بتنفيذ ميزة تسمح بتصدير جميع بيانات التطبيق (الوصفات، الخطط، المخزون) إلى ملف JSON واحد يمكن للمستخدم حفظه ومشاركته، واستعادته لاحقاً عند الحاجة، مما يضمن عدم فقدان البيانات.
هذا المشروع يعكس قدرتي على بناء تطبيقات متكاملة من الفكرة إلى التنفيذ، مع التركيز على تجربة المستخدم، والأداء العالي، وكتابة كود نظيف وقابل للتطوير.