ChatApp – Real-Time Chat Application
تطبيق محادثات لحظي (Real-Time Chat) تم تطويره باستخدام ASP.NET Core 10 Minimal API وReact 19، يتيح للمستخدمين التواصل الفوري عبر SignalR مع نظام مصادقة آمن وتجربة استخدام حديثة تدعم الإشعارات الفورية (Push Notifications).
يهدف المشروع إلى تقديم بنية احترافية قابلة للتوسع تحاكي التطبيقات المستخدمة في بيئات العمل الحقيقية، مع التركيز على الأداء، الأمان، وسهولة الصيانة.
أبرز المميزات
إنشاء حسابات وتسجيل الدخول باستخدام ASP.NET Core Identity.
نظام مصادقة يعتمد على JWT مع Refresh Tokens داخل HttpOnly Cookies لزيادة مستوى الأمان.
محادثات لحظية باستخدام SignalR مع إعادة الاتصال تلقائيًا عند انقطاع الشبكة.
حفظ جميع الرسائل داخل قاعدة البيانات مع إمكانية استرجاع سجل المحادثات.
إشعارات فورية (PWA Push Notifications) لجميع المستخدمين عند وصول رسائل جديدة.
واجهة API موثقة بالكامل باستخدام OpenAPI و Scalar.
دعم API Versioning لتسهيل تطوير الإصدارات المستقبلية.
جاهزية للنشر باستخدام Docker مع استضافة على Railway.
الأمان
تم الاهتمام بتطبيق أفضل ممارسات الأمان داخل المشروع، ومن أهمها:
حماية من هجمات XSS باستخدام HtmlSanitizer.
سياسة Content Security Policy (CSP).
Rate Limiting على نقاط تسجيل الدخول.
إدارة الأخطاء بشكل آمن دون كشف تفاصيل الخادم.
إعدادات CORS آمنة.
Security Headers لحماية التطبيق.
Refresh Token Rotation لزيادة أمان جلسات المستخدمين.
التقنيات المستخدمة
ASP.NET Core 10 Minimal API
C#
Entity Framework Core
PostgreSQL
SignalR
ASP.NET Core Identity
JWT Authentication
FluentValidation
HTML Sanitizer
OpenAPI & Scalar
Docker & Docker Compose
Railway
React 19
TypeScript
Tailwind CSS
shadcn/ui
Radix UI