منصوبے کے بارے میں
Carbon Components Svelte ایک Svelte فریم ورک کے لیے کمپوننٹ لائبریری ہے جو Carbon Design System کو نافذ کرتی ہے، جو کہ IBM کی جانب سے برقرار رکھا جانے والا ایک اوپن سورس ڈیزائن سسٹم ہے۔ README کے مطابق، یہ ان پٹس سے لے کر ڈیٹا ٹیبلز تک 90 سے زیادہ کمپوننٹس، پانچ بلٹ ان تھیمز (دو لائٹ اور تین ڈارک)، اور ایک مکمل ٹائپڈ TypeScript API فراہم کرتا ہے جو props، events اور slots کا احاطہ کرتی ہے، اور اس کا مقصد کی بورڈ اور اسکرین ریڈر سپورٹ کے ساتھ WCAG 2.1 AA رسائی حاصل کرنا ہے۔
اسٹائلنگ کو یا تو پری کمپائلڈ CSS کے طور پر لوڈ کیا جا سکتا ہے یا براہ راست مرکزی carbon-components پیکج سے SCSS امپورٹ کر کے، جسے README زیادہ پرفارمنس والا راستہ قرار دیتا ہے کیونکہ غیر استعمال شدہ کمپوننٹ اسٹائلز کو نکالا جا سکتا ہے۔ پانچ تھیم اسٹائل شیٹس فراہم کی گئی ہیں: white (ڈیفالٹ لائٹ)، g10 (لائٹ)، g80، g90 اور g100 (ڈارک)، پلس ایک all.css بنڈل جو CSS کسٹم پراپرٹیز کا استعمال کرتے ہوئے ان پانچوں کو لے کر چلتا ہے۔ ڈائنامک تھیمنگ all.css امپورٹ کرنے اور html ایلیمنٹ پر تھیم ایٹریبیوٹ سیٹ کرنے سے کی جاتی ہے؛ ری ایکٹو سوئچنگ کے لیے ایک Theme کمپوننٹ بھی دستیاب ہے۔
کمپوننٹس کو Svelte اسکرپٹ بلاک کے اندر پیکج سے امپورٹ کیا جاتا ہے، اور README قارئین کو کمپوننٹ API کی تفصیلات کے لیے پروجیکٹ کی ڈاکومنٹیشن سائٹ کی طرف بھیجتا ہے۔
وسیع تر ایکو سسٹم میں Carbon Icons Svelte شامل ہے جس میں چار سائزز (16، 20، 24 اور 32 پکسلز) میں 2,700 سے زیادہ آئیکنز ہیں؛ Carbon Pictograms Svelte جس میں 1,500 سے زیادہ وضاحتی پکٹوجرامز ہیں جو خالی حالتوں، آن بورڈنگ، ہیرو سیکشنز اور فیچر کال آؤٹس کے لیے بنائے گئے ہیں، جن کا ڈیفالٹ سائز 64 پکسلز ہے؛ Carbon Charts Svelte جس میں 25 سے زیادہ d3-پاورڈ چارٹس ہیں؛ اور Carbon Preprocess Svelte، جسے ایک اختیاری ڈویلپمنٹ ڈیپینڈینسی کے طور پر بیان کیا گیا ہے۔
Carbon Preprocess Svelte دو آپٹیمائزیشنز فراہم کرتا ہے۔ optimizeImports ایک Svelte پری پروسیسر ہے جو components، icons اور pictograms پیکجز سے بیرل امپورٹس کو ان کے سورس Svelte فائل پاتھز میں دوبارہ لکھتا ہے، جس کے بارے میں README کہتا ہے کہ یہ IDE ٹائپ اے ہیڈ کو برقرار رکھتے ہوئے ڈویلپمنٹ اور پروڈکشن کمپائل ٹائم کو تیز کر سکتا ہے۔ optimizeCss ایک Vite اور Rollup پلگ ان ہے جو بلڈ ٹائم پر غیر استعمال شدہ Carbon اسٹائلز کو ختم کرتا ہے؛ README ایک مثال دکھاتا ہے جہاں ایک بلٹ اسٹائل شیٹ تقریباً 606 kB سے کم ہو کر تقریباً 53 kB رہ جاتی ہے، اور نوٹ کرتا ہے کہ لائبریری کا ورژن 0.85.0 یا اس سے بعد کا ورژن ضروری ہے۔ Vite، SvelteKit، Rollup اور Webpack کے لیے کنفیگریشن اسنیپٹس دیے گئے ہیں، اور ریپوزٹری میں ہر ایک کے لیے مثال پروجیکٹس شامل ہیں۔
TypeScript تعریفیں sveld کے ساتھ تیار کی گئی ہیں۔ ڈاکومنٹیشن LLM-دوستانہ سادہ متن میں بھی شائع کی گئی ہے: ایک llms.txt کمپوننٹ انڈیکس جہاں ہر انٹری ایک فی-کمپوننٹ Markdown دستاویز سے منسلک ہے، اور ایک llms-full.txt فائل جس میں مکمل ڈاکومنٹیشن موجود ہے، جس میں کسی بھی کمپوننٹ کے لیے URL کے آخر میں .md لگا کر Markdown دستاویز دستیاب ہے۔
پروجیکٹ Apache 2.0 کے تحت لائسنس شدہ ہے اور اس میں کنٹری بیوٹنگ گائیڈ لائنز اور ایک چینج لاگ درج ہے۔ README ظاہر کرتا ہے کہ پیکج CI ماحول میں ڈی-آئیڈنٹیفائیڈ اور گمنام میٹرکس ڈیٹا جمع کرنے کے لیے IBM Telemetry کا استعمال کرتا ہے، اسے بطور ڈیپینڈینسی انسٹال کرنا اس جمع کرنے کے عمل سے اتفاق کرنا تصور کیا جاتا ہے، اور آپٹ آؤٹ کرنے اور جمع کیے گئے ڈیٹا کی تفصیلات کے لیے IBM ڈاکومنٹیشن کی طرف اشارہ کرتا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.