عن المشروع

OpenBand هو منصة إنتاج موسيقي مفتوحة المصدر تعمل محليًا أولاً، وتعمل بشكل أساسي في المتصفح، مبنية باستخدام Expo Router وReact Native Web وTypeScript. وهي موضوعة كمكان واحد لنقل فكرة موسيقية عبر المراحل التي يصفها ملف README بأنها: البدء، والاستماع، والتشكيل، والإنهاء، والاحتفاظ أو المشاركة، دون الحاجة إلى حساب للاستكشاف. تشمل القدرات الأساسية الموصوفة في المستودع: تسجيل وترتيب مسارات صوتية متعددة، وMIDI مع بيانو رول، ومسجل حلقات ومسار أكوردات، وعيّنات (Sampler)، وسنثيزر وصانع إيقاعات، ولوحة دواسات جيتار مع سلاسل نمذجة مكبرات صوت/كابينات، وفصل المصادر (اختياريًا عبر Demucs المحلي)، وأدوات ضبط وزمن/طبقة صوتية، وخلاط مع مؤثرات وحافلات (Buses) ولقطات (Snapshots) وقياس LUFS وإتقان وتصدير. كما تُذكر أوضاع إبداعية مركّزة وغرف استوديو ثلاثية الأبعاد. ميزات التعاون مثل الحضور والتحرير القائم على CRDT والتفرع مذكورة على أنها قيد التطوير وتعتمد على خدمات خلفية اختيارية. التوفر مؤطر صراحةً على أنه ألفا (Alpha). تطبيق الويب متاح للجمهور كعرض تجريبي؛ أما إصدارات Electron لسطح المكتب وAndroid وiOS فهي أهداف للبناء من المصدر وليست إصدارات موقعة في المتاجر. يذكر ملف README أنه لا يُدّعى وجود قائمة في متجر جوال أو تنزيل سطح مكتب موقّع حتى يوجد رابط إصدار موثّق، ويحذر المستخدمين من الاحتفاظ بنسخ احتياطية مستقلة للأعمال المهمة. يتطلب التشغيل محليًا Node.js 22 أو أحدث وnpm؛ أما Python 3.12 فمطلوبة فقط لفصل المصادر المحلي عبر Demucs. يمكن للواجهة الأمامية البدء بدون ملف .env باستخدام قيم احتياطية للتطوير، والتي يلاحظ ملف README أنها للاستكشاف والاختبار وليست إثباتًا لخدمات إنتاجية. تستخدم واجهة برمجة تطبيقات Express اختيارية SQLite افتراضيًا للتطوير المحلي، مع Supabase/PostgreSQL وتخزين الكائنات كخيارات مستضافة. تعمل إصدارات سطح المكتب عبر Electron خلف جسر OpenBandNative، ولا يُفترض أن تستدعي شاشات الواجهة الأمامية واجهات برمجة تطبيقات Electron مباشرة. البنية المعمارية متعددة الطبقات: الواجهة (Expo Router وReact وReact Native Web وTypeScript) تتحدث مع نواة موسيقى ومشروع مكتوبة بأنواع، والتي تتصل بمخازن المشروع والأصول المحلية، وصوتيات Web Audio / expo-audio / WASM، والواجهة البرمجية الاختيارية. يستخدم التنسيق رموز NativeWind/Tailwind، وتستخدم الحالة سياق React وZustand عند الاقتضاء، ويتضمن التحقق TypeScript وVitest واختبارات دخان Playwright وفحوصات مخطط البنية. الأوامر المفيدة تشمل npm run lint وnpm test وnpm run test:legacy وnpm run test:graph-sdd وnpm run graph:ci وnpm run build، مع فحص أنواع الواجهة الخلفية عبر npx tsc --noEmit. التوثيق شامل بشكل غير معتاد لإصدار ألفا: استراتيجية المنتج، والبنية المعمارية، وإعداد البناء، وحالة تنفيذ الميزات، وخارطة الطريق، والعقود، وسجلات قرارات البنية المعمارية، وأساس التسويق، ومواصفات تدقيق لقطات الشاشة/الواجهة. المساهمة تعتمد أولاً على طلبات السحب (PR-first)، وتستخدم GitHub Spec Kit للتغييرات الأكبر، ولديها سياسة AGENTS.md. المستودع مرخّص بموجب شروط MIT وفقًا لشارته، على الرغم من أن ملف README يلاحظ أن التبعيات والنماذج والعينات والمواد المقدمة من المبدعين تحتفظ بشروطها الخاصة، وأن الإسناد وإشعارات الأطراف الثالثة تظل بندًا لمراجعة الإطلاق. يُوصف اسم المشروع بأنه اسم عملي بانتظار توضيح العلامة التجارية.