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

# esm.sh جدید ویب ڈویلپمنٹ کے لیے ایک نو-بلڈ JavaScript CDN۔ ## جائزہ esm.sh آپ کو بغیر کسی انسٹالیشن یا بلڈ مرحلے کے براہ راست HTTP URLs سے JavaScript ماڈیولز امپورٹ کرنے کی اجازت دیتا ہے۔ یہ سورس کوڈ کو سرور کی طرف براؤزر کے موافق ES ماڈیولز میں تبدیل کرتا ہے، نتائج کو کیش کرتا ہے، اور انہیں عالمی Cloudflare CDN سے پیش کرتا ہے۔ ## رجسٹری سپورٹ - **NPM**: کسی بھی پیکیج کو نام، ورژن، یا ٹیگ سے امپورٹ کریں - **JSR**: Deno کے لیے موزوں رجسٹری جو `/jsr/` سے شروع ہوتی ہے - **GitHub**: `/gh/` پریفکس کے ساتھ ریپوزٹریز سے براہ راست امپورٹ - **pkg.pr.new**: `/pr/` پریفکس کے ساتھ PRs سے پری ویو بلڈز ## اہم خصوصیات ### زیرو-بلڈ امپورٹس ```js import React from "https://esm.sh/react@19.2.4"; import { encodeBase64 } from "https://esm.sh/jsr/@std/encoding@1.0.0/base64"; ``` ### سورس ٹرانسفارمیشن بلڈ ٹولز کے بغیر براؤزر میں خودکار طور پر `.ts(x)`، `.vue`، اور `.svelte` فائلوں کو تبدیل کرتا ہے۔ ### ڈیپنڈنسی مینجمنٹ کوئری پیرامیٹرز کے ساتھ ڈیپنڈنسی ورژنز کی وضاحت کریں: ```js import useSWR from "https://esm.sh/swr?deps=react@18.3.1"; ``` ڈیپنڈنسیز کو عرف دیں: ```js import useSWR from "https://esm.sh/swr?alias=react:preact/compat"; ``` ### بنڈلنگ آپشنز - `?bundle=false` - ڈیفالٹ بنڈلنگ غیر فعال کریں - `?standalone` - تمام ڈیپنڈنسیز کو ایک فائل میں بنڈل کریں - `?raw` - غیر تبدیل شدہ سورس کوڈ پیش کریں - `?exports=foo,bar` - مخصوص ایکسپورٹس تک ٹری-شیک کریں ### بلڈ کنفیگریشن بلڈ ٹارگٹس اور آپشنز کو کنٹرول کریں: ```js // ڈویلپمنٹ بلڈ import React from "https://esm.sh/react?dev"; // ٹارگٹ کی وضاحت کریں import React from "https://esm.sh/react?target=es2022"; // ESBuild آپشنز import foo from "https://esm.sh/foo?conditions=custom1,custom2"; import foo from "https://esm.sh/foo?keep-names"; ``` ### امپورٹ میپس انٹیگریشن بیر سپیسیفائر ریزولوشن کے لیے HTML امپورٹ میپس کے ساتھ کام کرتا ہے: ```html <script type="importmap"> { "imports": { "react": "https://esm.sh/react@19.2.4" } } </script> ``` براؤزر ریزولوشن کے لیے امپورٹس کو بیر سپیسیفائرز کے طور پر رکھنے کے لیے `?external` یا `*` پریفکس استعمال کریں۔ ### اضافی خصوصیات - **CSS امپورٹس**: JS میں CSS امپورٹ کرنے والے پیکیجز کے لیے `?css` فلیگ - **Web Workers**: انجیکشن سپورٹ کے ساتھ ورکر لوڈنگ کے لیے `?worker` کوئری - **Deno مطابقت**: Node.js بلٹ-ان ماڈیولز (fs، os، net، وغیرہ) کو حل کرتا ہے - **TypeScript سپورٹ**: `X-TypeScript-Types` ہیڈر کے ذریعے خودکار ٹائپ ڈیفینیشنز - **tsx اسکرپٹ**: HTML میں براہ راست TSX لکھنے کے لیے 1KB اسکرپٹ ### کیش پرج اپ ڈیٹ شدہ پیکیجز کے لیے کیش شدہ بلڈز کو ریفریش کریں: - درست ورژنز فوری طور پر دوبارہ بلڈ ہوتے ہیں - بیر نام اگلی درخواست پر ورژنز کو دوبارہ حل کرتے ہیں - پروف-آف-ورک چیلنج بدسلوکی کو روکتا ہے ### سیلف-ہوسٹنگ [ہوسٹنگ دستاویزات](./HOSTING.md) کی پیروی کرتے ہوئے اپنی انسٹنس تعینات کریں۔ ## حدود فی الحال Node.js یا Bun رن ٹائمز کی طرف سے سپورٹ نہیں ہے۔ ## لائسنس MIT