প্রকল্প সম্পর্কে

H5P Game Map হল একটি H5P কন্টেন্ট টাইপ যা শিক্ষার্থীদের একটি গেম ম্যাপ ইন্টারফেস থেকে তাদের নিজস্ব ব্যায়াম নির্বাচন করতে দেয়। সমর্থন প্রত্যাশা: README-এ বলা হয়েছে যে কন্টেন্ট টাইপটি নির্দিষ্ট প্রয়োজনীয়তা সহ চুক্তিভিত্তিক কাজের ফলাফল, যা অন্য ব্যবহারকারীদের প্রত্যাশার সাথে মিল নাও হতে পারে। ডেভেলপার এটিকে প্রকাশ্যে উপলব্ধ করেছেন যাতে এটি বিনামূল্যে ব্যবহার করা যায়, তবে তিনি বিনামূল্যে সমর্থন প্রদান, ফিচার রিকোয়েস্ট গ্রহণ বা পুল রিকোয়েস্ট গ্রহণ করতে বাধ্য নন; তিনি তার নিজস্ব গতিতে এর উপর কাজ চালিয়ে যেতে পারেন। নথিভুক্ত বিল্ড ওয়ার্কফ্লো: - git দিয়ে রিপোজিটরিটি ক্লোন করুন এবং আপনি যে শাখায় আগ্রহী তা চেক আউট করুন। - প্রয়োজনীয় মডিউল ইনস্টল করতে npm install চালান। - প্রকল্প বিল্ড করতে npm run build চালান, অথবা সম্পাদনা করার সময় সবকিছু ক্রমাগত পুনর্নির্মাণ করতে npm run watch চালান। - কোডকে প্রোডাকশনে দেওয়ার আগে সর্বদা npm run build চালান। - কোডিং স্টাইল গাইড লঙ্ঘন পরীক্ষা করতে npm run lint চালান। - বিল্ড প্রক্রিয়াটি ES6 কে পূর্ববর্তী সংস্করণে ট্রান্সপাইল করে যাতে পুরানো ব্রাউজারগুলির সাথে সামঞ্জস্যতা উন্নত হয়; কিছু ব্রাউজার যা সমর্থন করে না এমন ফাংশনগুলির জন্য একটি পলিফিল প্রয়োজন। - বিল্ড প্রক্রিয়াটি সোর্স ফাইলগুলিকে একটি ডিস্ট্রিবিউশন ফাইলে সরিয়ে দেয় এবং কোডকে মিনিফাই করে। সেমান্টিকস সাইজ ওয়ার্কারাউন্ড: সাধারণ H5P ইন্টিগ্রেশনগুলি mySQL ডাটাবেস ব্যবহার করে যেখানে h5p_libraries টেবিলের সেমান্টিকস ক্ষেত্রটি text টাইপের হয়, যা 64KB পর্যন্ত ডেটা ধারণ করে। GameMap-এর semantics.json সেই সীমা ছাড়িয়ে যায়, তাই প্রকল্পটি semantics_src.json রাখে এবং এটিকে মিনিফাই করে, যার জন্য npm run build_semantics ব্যবহৃত হয়। README-এ উল্লেখ করা হয়েছে যে এটি আদর্শ নয় কারণ সেমান্টিকস পরিবর্তন হলে এটি চালাতে হবে, এবং npm run build এবং npm run watch উভয়ই মিনিফাইড সেমান্টিকস তৈরি করে। প্যাকেজিং: README-এ ম্যানুয়ালি সবকিছু জিপ করার পরিবর্তে H5P CLI টুল ইনস্টল করার পরামর্শ দেওয়া হয়েছে, কারণ সেই টুলটি বেশ কিছু জিনিস স্বয়ংক্রিয়ভাবে পরিচালনা করে। সহজ ক্ষেত্রে, রিপোজিটরি ডিরেক্টরি এবং একটি টার্গেট ফাইল নাম দিয়ে h5p pack চালানোই যথেষ্ট। H5P-তে ডিস্ট্রিবিউশন ফাইলগুলি ব্যবহার করার বিষয়ে আরও তথ্যের জন্য, README-এ একটি ভূমিকা ভিডিও এবং h5p.org/library-development-এ H5P ডেভেলপার গাইডের দিকে নির্দেশ করা হয়েছে। এখানে সরবরাহ করা README-এ কোনো লাইসেন্স শর্ত, সংস্করণ তথ্য, ফিচার তালিকা বা শেষ-ব্যবহারকারী ব্যবহারের ডকুমেন্টেশন নেই, শুধুমাত্র এই বিল্ড, সেমান্টিকস এবং প্যাকেজিং নোটগুলি রয়েছে।