عن المشروع
EchoMusic هو مشغل موسيقى تابع لجهة خارجية مصمم لسطح المكتب، بسيط وأنيق وقوي (نسخة مفاهيم كوغو). تم بناء هذا المشروع باستخدام تقنيات حديثة مثل Electron وVue 3 وTypeScript وRust (عبر NAPI)، ويدعم التشغيل الكامل عبر المنصات macOS وWindows وLinux.
### الميزات الأساسية
- **جماليات فائقة وتخصيص**: تخطيط مُكيَّف بعناية لسطح المكتب، مع دعم الوضعين الفاتح والداكن وتخصيص ألوان السمة، مع موازنة كثافة المعلومات وتجربة غامرة.
- **موسيقى متعددة المصادر واستيراد قوائم التشغيل**: دعم التوصية والبحث عن الأغاني والمطربين والألبومات والرسوم البيانية، واستيراد قوائم تشغيل خارجية من منصات رئيسية مثل NetEase Cloud Music وQQ Music وKuwo وKugou وQishui وSpotify وApple Music.
- **محرك تحسين صوتي قوي**: محرك مؤثرات صوتية مدمج عبر المنصات، يدعم معادل صوت بعشر نطاقات (مع تعويض مسبق تلقائي)، وتوحيد جهارة الصوت LUFS، ومؤثرات صوتية مكانية WAV/IRS، بالإضافة إلى دعم التشغيل بسرعات متعددة وتلاشي الأغاني تدريجيًا.
- **نظام إضافات**: دعم تصفح وتثبيت مصادر إضافات عبر الإنترنت وتحميل إضافات محلية، مما يسمح للمطورين بتخصيص الصفحات والشريط الجانبي وإعدادات وأزرار المشغل ومراقبة أحداث التشغيل.
- **تكامل عميق على مستوى النظام**: تكامل أصلي مع MPNowPlayingInfoCenter على macOS وSMTC على Windows وMPRIS على Linux، مع دعم مفاتيح الوسائط النظامية ومزامنة التقدم واختصارات لوحة المفاتيح العالمية والتحكم السريع من علبة النظام وكلمات الأغاني على سطح المكتب.
- **مزامنة محلية وسحابية**: دعم وظيفة السحابة الموسيقية لمزامنة الصوت المحلي وملفات عبر المنصات إلى السحابة؛ ودعم راديو شخصي وتعرف على الأغاني (عبر الميكروفون والتقاط صوت النظام).
- **شفافية البيانات**: طلبات الموسيقى الأساسية تصل مباشرة إلى المنصات المعنية عبر خدمة محلية، ولا يوفر المشروع وسيطًا صوتيًا أو استضافة حسابات سحابية، مما يضمن أمان بيانات المستخدم.
### البنية التقنية
- **غلاف سطح المكتب**: Electron 43.4
- **إطار الواجهة الأمامية**: Vue 3.5 + TypeScript 5.9 + Vite 8 + إدارة الحالة Pinia
- **مكتبة مكونات الواجهة**: Reka UI + Tailwind CSS v4.3
- **معالجة الصوت**: فك ترميز FFmpeg، ومعالجة تغيير السرعة SoundTouch، مع إخراج صوتي أصلي مدمج داخل العملية عبر إضافة Rust NAPI.
- **الوحدات الأصلية (Native Addons)**: مبنية على napi-rs، وتشمل وحدات عالية الأداء لفك ترميز التشغيل والتقاط الصوت والتحكم في وسائط النظام وتخزين SQLite المستمر وتكييف المنصات.
### التطوير والبناء
يستخدم المشروع pnpm كمدير حزم، ويدير الوحدة الفرعية `server` عبر Git Submodules. يتطلب التطوير تثبيت Node.js 22.12+ وpnpm 9+ وسلسلة أدوات Rust المستقرة وسلسلة أدوات تجميع C/C++ (بما في ذلك LLVM/libclang). يدعم إعداد GitHub Actions الشامل للمشروع البناء التلقائي عبر المنصات وإصدار الإصدارات. يعتمد هذا المشروع بروتوكول المصدر المفتوح GPL-3.0، وهو مخصص للتعلم الشخصي والبحث التقني فقط.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.