تطبيق SkillSync هو منصة تهدف إلى ربط الأشخاص ببعضهم لمشاركة المهارات وتبادل المعرفة من خلال خوارزمية مطابقة (Matching Algorithm). يساعد التطبيق المستخدمين على العثور على أشخاص يمتلكون المهارات التي يرغبون في تعلمها، مما يختصر عليهم وقت التعلم ويجعل العملية أكثر تفاعلية وفعالية.
الميزات الرئيسية:
الإرشاد من الخبراء (Expert Mentorship):
يتيح التطبيق للمستخدمين التعلم مباشرة من خبراء موثّقين من خلال جلسات مباشرة مجدولة مسبقًا. توفر هذه الجلسات تفاعلًا فرديًا يساعد المتعلم على الحصول على إرشادات مخصصة تناسب احتياجاته التعليمية، مما يسرّع من تطوير مهاراته.
التعلم التبادلي بين المستخدمين (Connect and Learn Together):
يقدم التطبيق فكرة مبتكرة تقوم على ربط المستخدمين الذين يمتلك كل منهم مهارة يريد الآخر تعلمها. من خلال نظام المطابقة، يمكن لشخص يريد تعلم مهارة معينة أن يجد شخصًا آخر يريد تعلم مهارته، وعند موافقة الطرفين يتم تنظيم جلسات تعلم مشتركة لتحقيق استفادة متبادلة.
بناء علاقات وتواصل مستمر (Building Lasting Bonds):
لا يقتصر التطبيق على تبادل المهارات فقط، بل يشجع أيضًا على بناء علاقات وصداقات بين المستخدمين الذين يشاركون نفس الاهتمامات، مما يجعل تجربة التعلم أكثر متعة وتأثيرًا.
البنية المعمارية للتطبيق (Android Architecture):
تم تصميم المشروع باستخدام إطار معماري متعدد الطبقات لضمان تنظيم الكود وفصل المسؤوليات بين مكونات التطبيق المختلفة، ويشمل:
Modular Architecture:
تقسيم المشروع إلى وحدات (Modules) مستقلة لضمان عزل المكونات المختلفة وتسهيل تطويرها وصيانتها.
Onion Architecture:
تنظيم الوحدات ضمن ثلاث طبقات رئيسية:
- Presentation Layer لواجهة المستخدم.
- Domain Layer لمنطق الأعمال.
- Data Layer للتعامل مع مصادر البيانات.
BuildSrc Module:
وحدة مخصصة لإدارة إعدادات البناء والإضافات (Plugins)، مما يساعد على تنظيم المشروع وتوفير الوقت أثناء التطوير.
التقنيات والمكتبات المستخدمة:
تم تطوير تطبيق SkillSync Mobile باستخدام أحدث التقنيات في نظام أندرويد، ومن أبرزها:
- Jetpack Compose لبناء واجهات المستخدم بطريقة تفاعلية وحديثة.
- Compose Destinations لإدارة التنقل بين الشاشات داخل التطبيق.
- Dagger Hilt لتطبيق Dependency Injection وإدارة الاعتماديات.
- Retrofit للتعامل مع واجهات REST API.
- Socket.IO لإنشاء اتصال WebSocket يدعم التواصل اللحظي (Real-time).
- Dyte SDK لإضافة ميزة الاجتماعات المرئية والجلسات المباشرة داخل التطبيق.
- Firebase Crashlytics لمتابعة الأعطال والأخطاء في بيئة الإنتاج وتحسين استقرار التطبيق.