عن المشروع

موسيقى بلوكس هي لغة برمجة مرئية ومجموعة أدوات تفاعلية لاستكشاف المفاهيم الموسيقية والرياضية بطريقة متكاملة ومرحة. تم تطويرها بواسطة Sugar Labs وتعمل كتطبيق ويب تفاعلي مدعوم بإجراءات الماوس (نقر، نقرة يمين، سحب) واختصارات لوحة المفاتيح، مما ينتج رسومات وفنًا وموسيقى. المشروع هو فرع من Turtle Blocks JS، الذي أنشأه والتر بندر، مع مساهمات في التصميم الوظيفي والواجهة من معلم الموسيقى ديفين أوليباري. يتوفر Turtle Blocks أيضًا من نفس قاعدة الكود كعرض يركز على الرسومات، ويمكن الوصول إليه بإضافة ?turtle=true إلى عنوان URL. تشغيله: الطريقة الموصى بها هي الموقع المستضاف musicblocks.sugarlabs.org، مع دعم أفضل لمتصفحات Chrome/Chromium وEdge وFirefox وOpera. يتوفر إصدار تجريبي من فرع master عبر GitHub Pages، ويتم توزيع إصدار Android على Google Play. للاستخدام المحلي، يوثق README استنساخ المستودع، وتشغيل npm install وnpm run dev للعمل على المنفذ 3000، أو بناء وتشغيل صورة Docker تعرض نفس المنفذ. كما تتم الإشارة إلى إعداد devcontainer للتطوير في حاويات. استخدامه: يشير README إلى الوثائق ودليل، بالإضافة إلى صفحة موجهة لمستخدمي Scratch وSnap، وجداول لوحات للعثور على الكتل. تتم الإشارة إلى مستند كلام Kokoro لوظيفة الصوت. المساهمة: يتبع المشروع مدونة قواعد سلوك Sugar Labs وإرشادات المساهمة. توجد الوظائف الأساسية في دليل js/، مع تفاصيل الوحدات في js/README.md. يغطي بدء سريع للمطورين الاستنساخ والتثبيت والتشغيل المحلي وتشغيل فحوصات lint وPrettier والاختبارات قبل الدفع؛ ويتم توفير مستند اختبار. يتم الإبلاغ عن الأخطاء عبر متتبع المشكلات في المستودع، ويفضل مع إخراج وحدة التحكم وخطوات إعادة الإنتاج. الاعتمادات: تمت البرمجة الأولية لموسيقى بلوكس بواسطة ياش خانديلوال خلال Google Summer of Code 2015، مع مساهمين لاحقين من GSoC وGoogle Code-in أضافوا أدوات، وإعادة هيكلة، وتتبع طبقة الصوت، واستيراد MIDI، ودعم تصدير JavaScript، وأدوات استجابة، وتحسينات أداء وتغييرات في التخزين المحلي. يتم ربط قائمة كاملة بالمساهمين. الترخيص والخصوصية: موسيقى بلوكس مرخصة بموجب AGPL v3.0. يتم تخزين معلومات الجلسة في التخزين المحلي للمتصفح وتستخدم فقط لاستعادة الجلسات؛ يذكر README أنها لا تشارك مع أطراف ثالثة. تسمح ميزة Planet الاختيارية المجهولة بمشاركة المشاريع وإعادة مزجها.