## نبذة عن المشروع
**Nqood (نقود)** هو تطبيق متكامل لإدارة الأموال والمصروفات، مصمم بشكل أساسي للمستخدم العربي والمصري، وتم تطويره بالكامل من الصفر وحتى الإطلاق والإدارة في بيئة Production.
يتيح التطبيق للمستخدم تسجيل ومتابعة معاملاته المالية بسهولة، مع الاستفادة من الذكاء الاصطناعي في تحليل الإنفاق، تقديم النصائح المالية، والتقاط المعاملات تلقائيًا من النصوص والصوت ورسائل البنوك والإشعارات.
تم تنفيذ المشروع بشكل Full-Stack بدايةً من تصميم قاعدة البيانات والـ Backend وحتى تطبيق الموبايل، البنية التحتية، الأمان، النشر والمراقبة.
## أهم مميزات المشروع
* مساعد مالي بالذكاء الاصطناعي لتحليل المصروفات والتدفقات النقدية وتقديم النصائح.
* تسجيل المعاملات المالية باستخدام **النص والصوت**.
* قراءة رسائل البنوك والإشعارات على الجهاز واستخراج المعاملات تلقائيًا.
* دعم كامل للغة العربية والإنجليزية مع **RTL**.
* نظام قواعد مالية للأهداف الادخارية وحدود المصروفات والحد الأدنى للرصيد.
* دعم العمل بدون اتصال بالإنترنت مع مزامنة البيانات عند عودة الاتصال.
* معاملات متكررة وتذكيرات مالية.
* قفل التطبيق باستخدام البصمة والحماية من العبث بالأجهزة.
* Widgets وShortcuts وDeep Links وإشعارات تفاعلية.
* دعم تعدد أنواع البيانات المالية والحسابات والمعاملات.
## الذكاء الاصطناعي
تم بناء طبقة AI متكاملة تعمل في أكثر من اتجاه:
* **Advise:** تحليل البيانات المالية وتقديم النصائح والتوقعات.
* **Act:** اقتراح إجراءات مالية يمكن للمستخدم مراجعتها وتأكيدها.
* **Capture:** إنشاء مسودات للمعاملات تلقائيًا من النص والصوت ورسائل البنوك والإشعارات.
* دعم اللغة العربية وفهم اختلافات كتابة أسماء التجار والكيانات المالية.
* نظام حماية وتحكم في إجراءات الذكاء الاصطناعي بحيث لا يتم تنفيذ أي إجراء مالي إلا بعد تأكيد المستخدم.
## البنية التقنية
تم بناء النظام باستخدام بنية Full-Stack حديثة تشمل:
* **Flutter / Dart** لتطبيق الموبايل.
* **ASP.NET Core** لبناء الـ Backend والـ APIs.
* **Entity Framework Core** لإدارة البيانات.
* **PostgreSQL** كقاعدة البيانات الأساسية.
* **Redis** للـ caching والبيانات الفورية.
* **MongoDB** للـ analytical snapshots.
* **Hangfire** للمهام والعمليات المجدولة.
* **Docker** لتشغيل ونشر الخدمات.
* **Cloudflare + Nginx** للبنية التحتية والحماية.
* **JWT Authentication** وASP.NET Identity للمصادقة وإدارة المستخدمين.
## الأداء وقابلية التوسع
تم تصميم طبقة البيانات بحيث لا تعتمد التحليلات على فحص جميع المعاملات في كل عملية.
تم استخدام PostgreSQL كمصدر البيانات الأساسي، مع Redis للبيانات الفورية وMongoDB للـ snapshots اليومية والشهرية، مما أدى إلى تحويل بعض عمليات التحليل من التعامل مع عدد غير محدود من المعاملات **O(T)** إلى مجموعة محدودة من البيانات المجمعة **O(D)**.
## الأمان
تم تطبيق عدة طبقات من الحماية تشمل:
* JWT Authentication.
* Refresh Token Rotation.
* Account Lockout.
* Google OAuth.
* Biometric App Lock.
* RASP وRoot/Tamper Detection.
* Cloudflare وmTLS.
* Nginx TLS.
* قواعد وصول محدودة لقواعد البيانات.
* حماية بيانات المستخدم على الجهاز قبل إرسالها للخادم.
* عدم إرسال رسائل OTP والرسائل الشخصية خارج الجهاز.
* إمكانية تعطيل نظام قراءة الرسائل من الخادم.
## DevOps والبنية التحتية
تم تشغيل المشروع على بنية Self-Managed VPS مع:
* Docker-based deployment.
* Zero-downtime deployments.
* Health checks.
* Monitoring & Alerting.
* PostgreSQL Point-in-Time Recovery (PITR).
* Off-site backups.
* Restore drills.
* Automated background jobs.
* Audit logging.
## النتيجة
تم تطوير وإطلاق منتج Full-Stack حقيقي بشكل مستقل، بدايةً من تصميم الـ Database والـ Backend وحتى تطبيق Flutter والبنية التحتية والأمان والنشر والتشغيل في Production.
التطبيق متاح للمستخدمين على **Google Play** ويعمل في بيئة Production.