Vidora هو تطبيق Desktop مبني باستخدام Electron يتيح تنزيل الفيديو أو الصوت من YouTube ومنصات فيديو أخرى، مع واجهة حديثة، نظام تحميل متقدم، ودعم كامل لتعدد اللغات (Localization).
المشروع يركز على بناء تطبيق مكتبي قابل للتوسع باستخدام تقنيات الويب، مع فصل واضح بين منطق النظام، إدارة المهام، وواجهة المستخدم، دون الاعتماد على أطر عمل مثل React.
لماذا تم بناء المشروع؟
تم تطوير Vidora بهدف:
- فهم سلوك Web Components و Shadow DOM عند استخدامها على نطاق واسع في تطبيق حقيقي
- استكشاف إمكانيات Electron لبناء تطبيقات Desktop متكاملة
- تصميم Design System من الصفر يشبه Radix UI من حيث القابلية للتركيب (Composability)، ولكن باستخدام Web Components الأصلية
- إنشاء تطبيق يدعم Localization ليكون مناسبًا لمستخدمين من ثقافات ولغات مختلفة
النظرة المعمارية (Architecture Overview)
1. Main Process
2. Renderer Process
3. Download Job Manager
4. Download Manager
5. Localization Engine
6. Notification Center
معمارية الواجهة (UI Architecture)
- بناء جميع مكونات الواجهة باستخدام Web Components
- استخدام Shadow DOM لعزل الأنماط والسلوك
- استخدام Router خفيف الوزن لإدارة الانتقالات بين الواجهات
- استخدام Storybook لتطوير، اختبار، وتوثيق المكونات بشكل مستقل عن التطبيق
أبرز النقاط التقنية (Technical Highlights)
- عدم الاعتماد على React أو أي Framework UI تقليدي
- ال Design System مخصص قابل لإعادة الاستخدام
- بنية تسمح بإضافة ميزات جديدة بدون التأثير على المكونات الحالية
- تجربة مستخدم ثابتة وسلسة عبر أنظمة تشغيل مختلفة
القيمة التي يقدمها المشروع
- مثال عملي على استخدام Web Components في تطبيق Desktop حقيقي
- يوضح القدرة على بناء أنظمة كبيرة بدون الاعتماد على أطر شائعة