طبيق متطور لإدارة المهام والملاحظات اليومية، يركز على الكفاءة والسرعة في حفظ البيانات محلياً. التطبيق يدمج بين تدوين النصوص التقليدي وبين الموقع الجغرافي للملاحظة، مما يجعله أداة مثالية للمستخدمين الذين يرغبون في ربط مهامهم بأماكن محددة."
أهم الحلول التقنية التي نفذتها في هذا المشروع:
إدارة قواعد البيانات (Floor DB): استخدام مكتبة Floor (وهي طبقة فوق SQLite) لإنشاء قاعدة بيانات محلية قوية ومنظمة، مع استخدام الـ DAOs لضمان نظافة الكود (Clean Code).
ربط الملاحظات بالموقع (Geo-Location): دمج ميزة حفظ موقع المستخدم تلقائياً عند كتابة الملاحظة باستخدام حزمة Geolocator وتحويل الإحداثيات إلى عناوين نصية.
تفاعل المستخدم المتقدم (Shake to Clear): إضافة ميزة مبتكرة تتيح للمستخدم مسح الملاحظات بمجرد "هز الهاتف" باستخدام حساسات الحركة، مما يعزز تجربة المستخدم (UX).
خاصية التراجع (Undo Delete): تنفيذ نظام تراجع ذكي عند حذف الملاحظة باستخدام SnackBar للحماية من الحذف بالخطأ.
إدارة الحالة المتجاوبة (Reactive State Management): استخدام GetX وتحديداً RxList لضمان تحديث واجهة المستخدم فوراً عند إضافة، تعديل، أو حذف أي ملاحظة دون الحاجة لإعادة تحميل الصفحة.
الأدوات والتقنيات المستخدمة:
Database: Floor (SQLite)
Framework: Flutter (Dart)
State Management: GetX
Sensors: Shake Detector
Location Services: Geolocator & Geocoding