عن المشروع

يحوّل Spenddy بيانات طلبات توصيل الطعام من Swiggy إلى تحليلات غنية وتفاعلية — كل ذلك داخل متصفحك. ## ما يفعله بعد استيراد سجل طلباتك من Swiggy، يُظهر Spenddy اتجاهات الإنفاق، وتفضيلات المطاعم، وتفصيل المأكولات، وأنماطاً جغرافية على خريطة تفاعلية، بالإضافة إلى مخطط حراري يشبه GitHub لكل الطلبات. يتم عرض كل رسم بياني ومetric محلياً؛ فلا يغادر أي شيء جهازك. ## كيفية导入 البيانات المسار المفضل هو امتداد **Spenddy Link** لمتصفح Chrome، الذي يزور حسابك في Swiggy ويحفظ بيانات الطلبات تلقائياً في متصفحك. كبديل، يمكنك تنزيل ملف تصدير البيانات من Swiggy، واستخراج `allOrders.json`، وإسقاطه داخل Spenddy. ## لوحات المعلومات الرئيسية - **نظرة عامة** — إجمالي الطلبات، ملخص الإنفاق، والإحصاءات الأساسية - **تحليل الإنفاق** — الاتجاهات الشهرية/السنوية، تفصيل الرسوم والخصومات، ومتوسط قيمة الطلب - **تحليل المطاعم** — أفضل المطاعم عدداً وإنفاقاً، وتفضيلات المأكومات، ورسوم مستندة للموقع - **تحليلات المواقع** — خريطة Leaflet تحتوي على إحداثيات التوصيل الفعلية والمطاعم - **نشاط الطلبات** — مخطط حراري لعام كامل يُظهر أيام وأوقات وذروات التكرار ## الخصوصية والبنية يعمل Spenddy بالكامل على جانب العميل (client-side). لا يُجري أي طلبات شبكة إلى خوادم خارجية لمعالجة البيانات ولا يجمع أي معلومات شخصية. يستخدم التطبيق بنية متعددة المصادر قابلة للتوسيع (`BaseSource` / نمط `AbstractSource`)، مما يعني أن إضافة مزوّد جديد (مثل Zomato) تتطلب فقط تنفيذ واجهة المصدر. يتم إدارة الذاكرة عبر التحميل الكسول والتنظيف التلقائي: يتم تحميل المصادر عند الزيارة الأولى وفك تحميلها بعد ~10 دقائق من عدم النشاط أو 30 ثانية بعد التنقل. ## التقنيات المستخدمة React 18 · TypeScript · Vite · Tailwind CSS · Chart.js & Recharts · Leaflet · Framer Motion · Lucide React · date-fns ## النشر الاستهداف عبر GitHub Pages باستخدام action مدمج هو المسار الموصى به، لكن أي استضافة ثابتة تعمل مع إخراج `pnpm build`. ## الرخصة MIT. مساهمات مرحّب بها عبر pull request.