প্রকল্প সম্পর্কে
Jetz হলো Jetpack Compose দ্বারা অনুপ্রাণিত একটি কম্পোজেবল জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক, যা ডিক্লারেটিভ জাভাস্ক্রিপ্ট ব্যবহার করে রিঅ্যাকটিভ ওয়েব ইন্টারফেস তৈরির জন্য ব্যবহৃত হয়। এটি ডেভেলপারদের JSX, বিল্ড-টাইম কম্পাইলেশন বা টেমপ্লেট ভাষার উপর নির্ভর না করে সাধারণ ফাংশন কল (যেমন div, button, p) দিয়ে DOM ট্রি তৈরি করার সুযোগ দেয়।
প্রধান সক্ষমতাগুলোর মধ্যে রয়েছে:
- ডিক্লারেটিভ UI কম্পোজিশন: HTML এলিমেন্টগুলো কম্পোজেবল জাভাস্ক্রিপ্ট ফাংশন হিসেবে এক্সপোর্ট করা হয়। এলিমেন্টগুলো আর্গুমেন্ট হিসেবে স্ট্রিং, সংখ্যা, চাইল্ড এলিমেন্ট, অবজেক্ট (অ্যাট্রিবিউট/প্রপার্টির জন্য), CSS হেল্পার এবং রিঅ্যাকটিভ স্টেট গ্রহণ করে।
- রিঅ্যাকটিভ স্টেট ম্যানেজমেন্ট: সূক্ষ্ম-দানার একক-মানের স্টেটের জন্য stateOf, localStorage-এর সাথে সিঙ্ক্রোনাইজড স্টেটের জন্য rememberOf, এবং স্বয়ংক্রিয়ভাবে ট্র্যাক করা ডেরাইভড ভ্যালুর জন্য computed।
- কম্পোনেন্ট সিস্টেম: কম্পোনেন্টগুলোকে ফাংশন হিসেবে বা Component এক্সটেন্ড করা ক্লাস হিসেবে ডিফাইন করা যায়, সাথে লাইফসাইকল হুক (onCreate, onMount, onUpdate, onDestroy)।
- রিঅ্যাকটিভ কালেকশন: অবজারভেবল অ্যারের জন্য listOf এবং sequenceOf, সাথে keyed লিস্ট রিকনসিলিয়েশনের জন্য loop এবং O(1) DOM এলিমেন্ট রিসাইক্লিং।
- কন্ডিশনাল রেন্ডারিং: ডিক্লারেটিভ ব্রাঞ্চ সুইচিংয়ের জন্য _if, _elseif, _else এবং ifElse।
- টু-ওয়ে ডেটা বাইন্ডিং: ইনপুট এলিমেন্টগুলোকে স্টেটের সাথে সিঙ্ক্রোনাইজ করার জন্য bind প্রপার্টি।
- রাউটিং এবং নেভিগেশন: Router, route, link এবং রাউট মিডলওয়্যার/গার্ড সহ ক্লায়েন্ট-সাইড SPA রাউটিং।
- সেশন স্টেট: sessionStorage দ্বারা সমর্থিত রিঅ্যাকটিভ কী-ভ্যালু স্টোরের জন্য JetzSession এবং sessionOf।
- DOM ইউটিলিটিজ: এলিমেন্টের উপর find, findAll, attr, addClass-এর মতো ফ্লুয়েন্ট হেল্পার মেথড।
- সাইড-ইফেক্ট: ক্লিনআপ সহ স্বয়ংক্রিয়ভাবে ট্র্যাক করা ইফেক্টের জন্য effect।
ফ্রেমওয়ার্কটি Rspack দিয়ে বান্ডল করা এবং npm প্যাকেজ (@daevoft/jetz) হিসেবে বিতরণ করা হয়।
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.