عن المشروع
H5P Game Map هو نوع محتوى H5P يتيح للطلاب اختيار تمارينهم من خلال واجهة خريطة لعبة.
توقعات الدعم: يذكر README أن نوع المحتوى هو نتيجة عمل تعاقدي بمتطلبات محددة قد لا تتطابق مع توقعات المستخدمين الآخرين. جعل المطوره متاحًا بشكل مفتوح ليتم استخدامه مجانًا، لكنه غير ملزم بتقديم دعم مجاني، أو قبول طلبات الميزات، أو قبول طلبات السحب؛ وقد يستمر في العمل عليه بوتيرته الخاصة.
عملية البناء كما هو موثق:
- استنساخ المستودع باستخدام git والتحقق من الفرع الذي تهتم به.
- تشغيل npm install لتثبيت الوحدات المطلوبة.
- تشغيل npm run build لبناء المشروع، أو npm run watch للحصول على إعادة بناء مستمرة أثناء التحرير.
- تشغيل npm run build دائمًا قبل وضع الكود في الإنتاج.
- تشغيل npm run lint للتحقق من انتهاكات دليل أسلوب الترميز.
- تقوم عملية البناء بترجمة ES6 إلى إصدارات أقدم لتحسين التوافق مع المتصفحات القديمة؛ تتطلب الوظائف التي لا تدعمها بعض المتصفحات استخدام polyfill.
- تقوم عملية البناء أيضًا بنقل ملفات المصدر إلى ملف توزيع واحد وتقليل حجم الكود.
حل مشكلة حجم semantics: تستخدم عمليات تكامل H5P الشائعة قواعد بيانات mySQL حيث يكون حقل semantics في جدول h5p_libraries من نوع text، ويحمل ما يصل إلى 64KB من البيانات. يتجاوز ملف semantics.json الخاص بـ GameMap هذا الحد، لذلك يحتفظ المشروع بـ semantics_src.json ويقوم بضغطه، وهذا ما يُستخدم من أجله npm run build_semantics. يلاحظ README أن هذا ليس مثاليًا لأنه يجب تشغيله عند تغيير semantics، وأن npm run build وnpm run watch يقومان أيضًا ببناء semantics المضغوط.
التغليف: يوصي README بتثبيت أداة H5P CLI بدلاً من ضغط كل شيء يدويًا، لأن هذه الأداة تتعامل مع العديد من الأمور تلقائيًا. في الحالات البسيطة، يكفي تشغيل h5p pack متبوعًا بدليل المستودع واسم الملف الهدف. لمزيد من المعلومات حول استخدام ملفات التوزيع في H5P، يشير README إلى فيديو تمهيدي ودليل مطور H5P على h5p.org/library-development.
لا يحتوي README المقدم هنا على شروط الترخيص، أو معلومات الإصدار، أو قائمة الميزات، أو وثائق استخدام المستخدم النهائي بخلاف هذه الملاحظات حول البناء، وsemantics، والتغليف.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.