مشروع Tech Solutionists CRM System هو نظام إدارة علاقات العملاء (CRM) متكامل تم تطويره باستخدام ASP.NET Core 8 في جانب الـ Backend وReact.js في واجهة المستخدم (Frontend)، بهدف تحسين إدارة فرق العمل والمشروعات داخل الشركات.
يتيح النظام إدارة شاملة للمستخدمين، العملاء، والمشروعات، مع ربط كل مشروع بمجموعة من المهام (Tasks) يتم توزيعها تلقائيًا على الموظفين داخل الشركة، مع إمكانية متابعة حالة كل مهمة لحظة بلحظة.
أهم المميزات:
إدارة المستخدمين والصلاحيات
يدعم النظام نوعين من الحسابات:
Admin: يمتلك صلاحية كاملة لإدارة النظام، إضافة الموظفين، وتوزيع المهام.
User: يمكنه إدارة مهامه الخاصة وتحديث حالتها.
يتم التحكم في الصلاحيات من خلال نظام JWT Authentication و Role-based Authorization.
إدارة المشاريع والمهام (Projects & Tasks)
إنشاء مشاريع جديدة وتعيين مدير لكل مشروع.
ربط كل مشروع بعدد من المهام وتوزيعها على الموظفين.
تتبع حالة كل مهمة (قيد التنفيذ، مكتملة، متأخرة...).
نظام تسجيل دخول حديث (Authentication)
يدعم النظام تسجيل الدخول بالبريد وكلمة المرور بالإضافة إلى تسجيل الدخول عبر Google وGitHub OAuth2.
واجهة برمجة تطبيقات (API) موثقة بـ Swagger
يحتوي المشروع على واجهة API متكاملة لتسهيل التكامل مع تطبيقات أخرى،
مع توثيق كامل باستخدام Swagger UI.
نظام قواعد بيانات PostgreSQL
يعتمد المشروع على PostgreSQL ويتم تهيئته وتشغيله تلقائيًا عبر Docker Container.
كما يتم تطبيق Migrations تلقائيًا عند تشغيل التطبيق.
نشر (Deployment) كامل على Render
الـ Backend والـ Frontend يتم تشغيلهما على Render Cloud Platform مع Dockerized Environment لضمان الاستقرار والتوسع بسهولة.
التقنيات المستخدمة:
Backend: ASP.NET Core 8 (Web API)
Frontend: React.js + Tailwind CSS
Database: PostgreSQL
Authentication: JWT + Google OAuth + GitHub OAuth
Documentation: Swagger / OpenAPI
Containerization: Docker
Deployment: Render Cloud
Architecture: Clean Architecture (API - Service Layer - Data Access Layer - Domain Layer)
ORM: Entity Framework Core
الهدف من المشروع
يهدف النظام إلى تحسين إدارة المشاريع داخل المؤسسات الصغيرة والمتوسطة عبر لوحة تحكم واحدة تجمع الموظفين، العملاء، والمشروعات مع واجهة استخدام سهلة، مع ضمان الأمان وسهولة التكامل مع أنظمة أخرى مستقبلًا.