منصوبے کے بارے میں

Happy DOM ایک npm پر شائع شدہ JavaScript لائبریری ہے جو کسی بھی گرافیکل یوزر انٹرفیس کے بغیر براؤزر کے document object model کو نافذ کرتی ہے۔ اس کا مقصد JavaScript کوڈ کو براؤزر جیسا DOM ماحول فراہم کرنا ہے، تاکہ وہ اسکرپٹس اور کمپوننٹس جو document، window اور متعلقہ web APIs کی توقع رکھتے ہیں، وہ اصل براؤزر کے باہر چل سکیں۔ یہ کیا کور کرتا ہے پروجیکٹ کا README ان DOM پر مرکوز صلاحیتوں کو نمایاں کرتا ہے جنہیں یہ نافذ کرتا ہے: - Custom Elements، یعنی Web Components - Declarative Shadow DOM - Mutation Observer - Tree Walker - Fetch API - اور، مینٹینرز کے الفاظ میں، بہت کچھ چونکہ یہ رینڈرنگ فیچرز کے بجائے DOM-layer فیچرز ہیں، اس لیے یہ لائبریری بصری نمائش کے بجائے ویب پیج کے پروگراماتی استعمال کو ہدف بناتی ہے۔ یہ اسے ان ماحولوں کے لیے ایک موزوں انتخاب بناتا ہے جہاں مکمل براؤزر یا headless براؤزر ضرورت سے زیادہ بھاری ہو سکتے ہیں۔ یہ کس کے ساتھ کام کرتا ہے دستاویزات میں ٹولز اور فریم ورکس کا ایک وسیع مجموعہ درج ہے جن کے ساتھ یہ پروجیکٹ مطابقت رکھتا ہے: - ٹیسٹ رنرز اور ٹیسٹنگ یوٹیلیٹیز: Vitest, Jest, Bun, Testing Library - فریم ورکس اور کمپوننٹ لائبریریز: Google LitElement, Vue, React, Svelte, Angular یہ رینج ظاہر کرتی ہے کہ لائبریری کو ایک اسٹینڈ الون ایپلی کیشن کے بجائے دیگر ٹولنگ، خاص طور پر فرنٹ اینڈ ٹیسٹ سیٹ اپس کے نیچے ایک مشترکہ DOM سبسٹریٹ کے طور پر پوزیشن کیا گیا ہے۔ README براہ راست ایک ویکی پیج سے منسلک ہے جس میں اسے ٹیسٹ ماحول کے طور پر سیٹ کرنے کے بارے میں بتایا گیا ہے۔ دستاویزات اور کمیونٹی پروجیکٹ ایک GitHub ویکی برقرار رکھتا ہے جس میں دستاویزات کا انٹری پوائنٹ، ایک getting-started صفحہ اور ایک مخصوص setup-as-test-environment گائیڈ موجود ہے۔ ان لوگوں کے لیے جو تبدیلیاں بھیجنا چاہتے ہیں، ریپوزٹری میں ایک contributing گائیڈ دستیاب ہے۔ README اسپانسرز کا بھی اعتراف کرتا ہے، جن کے لوگو پروجیکٹ پیج پر دکھائے گئے ہیں۔ پروجیکٹ کی تفصیلات - زبان اور ایکو سسٹم: JavaScript، npm کے ذریعے happy-dom کے طور پر تقسیم کیا گیا - لائسنس: MIT License، کاپی رائٹ 2019 سے حال تک، David Ortner کے پاس - ریپوزٹری: capricorn86/happy-dom یہ کس کے لیے موزوں ہو سکتا ہے وہ ڈویلپرز جو گرافیکل براؤزر لانچ کیے بغیر Node.js یا Bun پر مبنی ورک فلو میں ٹیسٹ چلانا یا DOM پر منحصر کوڈ کو نافذ کرنا چاہتے ہیں، اس کے فطری سامعین ہیں۔ وہ ٹیمیں جو فہرست میں شامل کسی بھی ٹیسٹ رنر یا فریم ورک کا استعمال کر رہی ہیں، وہ اسے DOM ماحول کے طور پر جانچنے کے قابل پا سکتی ہیں۔ اس قسم کی کسی بھی ڈیپینڈینسی کی طرح، عملی ٹیسٹ یہ ہے کہ آیا وہ مخصوص DOM فیچرز جن پر آپ کا کوڈ انحصار کرتا ہے، اس امپلیمینٹیشن میں کور کیے گئے ہیں اور توقع کے مطابق کام کرتے ہیں۔ README خود فہرست شدہ فیچرز کے علاوہ کارکردگی، بینچ مارکس یا مکمل ہونے کے بارے میں کوئی دعویٰ نہیں کرتا، لہذا ان کی تصدیق براہ راست پروجیکٹ کی موجودہ دستاویزات اور ٹیسٹ سویٹ سے کی جانی چاہیے۔