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

amis হলো Baidu-এর ওপেন-সোর্স ফ্রন্ট-এন্ড লো-কোড ফ্রেমওয়ার্ক। এর মূল ধারণা হলো JSON কনফিগারেশনের মাধ্যমে পেজ বর্ণনা করা, যার ফলে বিভিন্ন ব্যাকঅ্যান্ড ম্যানেজমেন্ট পেজ তৈরি করা যায় এবং ফ্রন্ট-এন্ড উন্নয়নের কাজ কমানো যায়। ব্যবহারকারীদের এমনকি ফ্রন্ট-এন্ড প্রযুক্তি সম্পর্কে গভীরভাবে জানার প্রয়োজন হয় না। প্রকল্পটি দেশীয় ও আন্তর্জাতিক দুটি ডকুমেন্টেশন সাইট এবং একটি ভিজ্যুয়াল এডিটর ডেমো (amis-editor-demo) সরবরাহ করে, সাথে একটি সহযোগী amis-admin প্রকল্পও রয়েছে। README-তে রুলু গ্রুপ নম্বর দেওয়া আছে, যাতে ব্যবহারকারীরা যোগাযোগ করতে পারেন। রিপোজিটরির বিষয়বস্তু থেকে দেখা যায়, amis monorepo কাঠামো ব্যবহার করে এবং npm workspaces দিয়ে ম্যানেজ করা হয়। Node 12/14/16 ও npm 7+ পরিবেশ সুপারিশ করা হয়। উন্নয়ন প্রক্রিয়ার মধ্যে রয়েছে: নির্ভরতা ইনস্টল করা (npm i --legacy-peer-deps), লোকাল সার্ভিস চালু করা (npm start, ডিফল্টভাবে 127.0.0.1:8888-এ উদাহরণ পেজ অ্যাক্সেস করা যায়), এবং এডিটর উন্নয়নের জন্য packages/amis-editor/ পাথে যেতে হয়। টেস্টিংয়ের ক্ষেত্রে, jest TypeScript সমর্থন না করার কারণে প্রথমে npm run build চালিয়ে কম্পাইল করতে হয়, তারপর npm test --workspaces চালাতে হয়; টেস্ট কেস নাম বা একক টেস্ট ফাইল অনুযায়ী চালানো যায়, এবং কভারেজ দেখা ও snapshot আপডেট করার কমান্ডও রয়েছে। রিলিজ প্রক্রিয়া অভ্যন্তরীণ registry ও বাহ্যিক নেটওয়ার্ক পরিবেশের মধ্যে পার্থক্য করে, npm run publish, npm run version, npm run release ইত্যাদি স্ক্রিপ্টের মাধ্যমে সম্পন্ন হয়। অবদানের পদ্ধতি হলো ব্রাঞ্চ ডেভেলপমেন্ট: feat-xxx ব্রাঞ্চ তৈরি করে রিমোট ব্রাঞ্চে পুশ করার পর PR জমা দিতে হয়। কোড TypeScript-এ লেখার প্রয়োজন, এবং যুক্তিসঙ্গত পরিবর্তন, নতুন পাবলিক রেন্ডারার, টেস্ট কেস বা ডকুমেন্টেশন জমা গ্রহণ করা হবে। README-তে আরও উল্লেখ করা হয়েছে যে amis শুধুমাত্র ফ্রন্ট-এন্ড লো-কোড কভার করে; সম্পূর্ণ লো-কোড প্ল্যাটফর্মের প্রয়োজন হলে Aisuda (爱速搭) বিবেচনা করা যেতে পারে।