عن المشروع

Anklang هو تطبيق لتوليف الصوت الرقمي مصمم للإبداع الحي وتأليف الموسيقى والمواد الصوتية الأخرى. وهو إعادة تصميم للعديد من مشاريع الصوت السابقة لمؤلفيه الرئيسيين، بهدف تحقيق اندماج متماسك وقوي للتأليف والإبداع التفاعلي لموسيقى التوليف. يمكن بناء المشروع على لينكس عن طريق استنساخ المستودع وتشغيل `make`. ومع ذلك، فمن الأسهل تنزيل أحد إصدارات الإصدارات المحمولة (AppImage) ذاتية الاحتواء، ووضع علامة قابلة للتنفيذ عليه، وتشغيله. ## التطوير ### خارطة الطريق نظرًا لأنه أصبح أكبر، تم نقل خارطة الطريق إلى [ROADMAP.md](ROADMAP.md). ### هيكل المشروع - `ase/` - مصادر الواجهة الخلفية C++23 (`*.c`, `*.h`, `*.cc`, `*.hh`) - `ase/api.hh` - واجهة برمجة التطبيقات العامة للاتصال بين الواجهة الخلفية والواجهة الأمامية - `trkn/` - مصادر البائعين (tracktion_engine, JUCE) - `ui/` - واجهة المستخدم على الويب (Vite, Tailwind, SolidJS) - `jsonipc/` - الاتصال بين العمليات لرسائل JSON بين الواجهة الخلفية والمتصفح ### البناء والاختبار - البناء: `make` - تشغيل جميع الاختبارات: `make check` - تشغيل اختبار محدد: `make check-<test_name>` (مثل `make check-string_funcs`) - التنفيذ المباشر للاختبار: `out/lib/AnklangSynthEngine --test <test_name>` - قائمة الاختبارات المتاحة: `out/lib/AnklangSynthEngine --list-tests` ### إرشادات الاختبار - يتطلب الكود الجديد اختبارات مناسبة - تجنب اختبارات ما يضمنه نظام الأنواع بالفعل - استخدم فقط الطرق المتاحة على الواجهة (قم بتوسيع ملفات `*.hh` إذا لزم الأمر) ## الترخيص هذا التطبيق بما في ذلك محرك الصوت مرخص بموجب [MPL-2.0](https://github.com/tim-janik/anklang/blob/trunk/LICENSE). ومع ذلك، فإن الإضافات التي يمكن استخدامها مع هذا التطبيق أو التي قد يتم تنزيلها عبر حزم التوسعة، قد تخضع لشروط ترخيص مختلفة، مثل GPLv3 أو تراخيص ملكية.