अपने प्रश्न को पूछें और दस्तावेज़ का सारांश प्राप्त करें, इस पृष्ठ और आपके चुने हुए AI प्रदाता का उपयोग करके
यह दस्तावेज़ पुराना है, आधार संस्करण को इस तिथि पर अपडेट किया गया है 29 अगस्त 2026.
अंग्रेजी दस्तावेज़ पर जाएँसंस्करण इतिहास
- "`@intlayer/analytics` इंस्टॉल होने पर एनालिटिक्स डिफ़ॉल्ट रूप से सक्षम किया गया"v9.3.322/8/2026
- "`routing.enableProxy` को तीन-स्थिति बनाया गया: अनसेट (auto), `true`, `false`"v9.1.36/8/2026
- "`analytics` कॉन्फ़िगरेशन जोड़ा गया"v9.0.011/7/2026
- "Add `enableProxy` option to the routing configuration"v9.0.024/6/2026
- "शब्दकोश कॉन्फ़िगरेशन में `format` विकल्प जोड़ा गया"v8.10.017/6/2026
- "LM Studio प्रदाता के लिए समर्थन जोड़ें"v8.9.412/5/2026
- "बिल्ड कॉन्फ़िगरेशन में `prune` और `minify` विकल्प जोड़े गए"v8.7.08/4/2026
- "`currentDomain` विकल्प जोड़ा गया"v8.7.03/4/2026
- "'compiler.output' और 'dictionary.fill' के लिए प्रति लोकेल ऑब्जेक्ट नोटेशन जोड़ा गया"v8.4.020/3/2026
- "'baseDir' को 'content' कॉन्फ़िगरेशन से 'system' कॉन्फ़िगरेशन में स्थानांतरित किया गया"v8.3.011/3/2026
- "कंपाइलर विकल्पों को अपडेट किया गया, 'output' और 'noMetadata' के लिए समर्थन जोड़ा गया"v8.2.09/3/2026
- "कंपाइलर विकल्पों को अपडेट किया गया"v8.1.725/2/2026
- "'build-only' कंपाइलर विकल्प और डिक्शनरी प्रीफिक्स जोड़ा गया"v8.1.523/2/2026
- "ओपन राउटर, अलीबाबा, अमेज़ॅन, गूगल वर्टेक्स बेडरॉक, फायरवर्क्स, ग्रोक, हगिंग फेस और टुगेदर.एआई प्रदाताओं के लिए समर्थन जोड़ा गया"v8.0.612/2/2026
- "AI कॉन्फ़िगरेशन में `dataSerialization` जोड़ा गया"v8.0.56/2/2026
- "अंतर्निहित तंत्र को बेहतर ढंग से वर्णित करने के लिए `live` आयात मोड का नाम बदलकर `fetch` कर दिया गया।"v8.0.024/1/2026
- "बिल्ड कॉन्फ़िगरेशन `importMode` को `dictionary` कॉन्फ़िगरेशन में स्थानांतरित किया गया।"v8.0.022/1/2026
- "राउटींग कॉन्फ़िगरेशन में `rewrite` विकल्प जोड़ा गया"v8.0.022/1/2026
- "सिस्टम कॉन्फ़िगरेशन को कंटेंट कॉन्फ़िगरेशन से अलग किया गया। आंतरिक पथों को `system` प्रॉपर्टी में स्थानांतरित किया गया। कंटेंट फ़ाइलों को कोड ट्रांसफ़ॉर्मेशन से अलग करने के लिए `codeDir` जोड़ा गया।"v8.0.018/1/2026
- "डिक्शनरी विकल्प `location` और `schema` जोड़े गए"v8.0.018/1/2026
- "JSON5 और JSONC फ़ाइल स्वरूपों के लिए समर्थन जोड़ा गया"v7.5.110/1/2026
- "`buildMode` विकल्प जोड़ा गया"v7.5.017/12/2025
- "`dictionary` कॉन्फ़िगरेशन जोड़ा गया"v7.0.025/10/2025
- "`middleware` को `routing` कॉन्फ़िगरेशन से बदल दिया गया"v7.0.021/10/2025
- "`formatCommand` विकल्प जोड़ा गया"v7.0.012/10/2025
- "`excludedPath` विकल्प को अपडेट किया गया"v6.2.012/10/2025
- "`outputFormat` विकल्प जोड़ा गया"v6.0.223/9/2025
- "`dictionaryOutput` और `i18nextResourcesDir` फ़ील्ड हटा दिए गए"v6.0.021/9/2025
- "`live` आयात मोड जोड़ा गया"v6.0.016/9/2025
- "`hotReload` फ़ील्ड को `liveSync` से बदल दिया गया और `liveSyncPort`, `liveSyncURL` फ़ील्ड जोड़े गए"v6.0.04/9/2025
- "`activateDynamicImport` को `importMode` विकल्प से बदल दिया गया"v5.6.125/7/2025
- "डिफ़ॉल्ट `contentDir` को `['src']` से बदलकर `['.']` कर दिया गया"v5.6.013/7/2025
- "`docs` कमांड जोड़े गए"v5.5.1129/6/2025
इस पृष्ठ की सामग्री एक AI द्वारा अनुवादित की गई है।
अंग्रेजी में मूल सामग्री के अंतिम संस्करण देखेंअगर आपके पास इस दस्तावेज़ को सुधारने के लिए कोई विचार है, तो कृपया GitHub पर एक पुल अनुरोध सबमिट करके योगदान देने में संकोच न करें।
दस्तावेज़ के लिए GitHub लिंकदस्तावेज़ का Markdown को क्लिपबोर्ड पर कॉपी करें
Intlayer कॉन्फ़िगरेशन दस्तावेज़
अवलोकन
Intlayer कॉन्फ़िगरेशन फ़ाइलें आपको प्लगइन के विभिन्न पहलुओं को अनुकूलित करने की अनुमति देती हैं, जैसे अंतर्राष्ट्रीयकरण, मिडलवेयर और कंटेंट प्रबंधन। यह दस्तावेज़ कॉन्फ़िगरेशन की प्रत्येक प्रॉपर्टी का विस्तृत विवरण प्रदान करता है।
विषय सूची
कॉन्फ़िगरेशन फ़ाइल समर्थन
Intlayer JSON, JS, MJS और TS कॉन्फ़िगरेशन फ़ाइल स्वरूपों को स्वीकार करता है:
intlayer.config.tsintlayer.config.jsintlayer.config.jsonintlayer.config.json5intlayer.config.jsoncintlayer.config.cjsintlayer.config.mjs.intlayerrc
कॉन्फ़िगरेशन फ़ाइल उदाहरण
कोड को क्लिपबोर्ड पर कॉपी करें
कॉन्फ़िगरेशन संदर्भ गाइड
नीचे Intlayer में उपलब्ध विभिन्न कॉन्फ़िगरेशन मापदंडों का विवरण दिया गया है।
अंतर्राष्ट्रीयकरण कॉन्फ़िगरेशन (Internationalization)
अंतर्राष्ट्रीयकरण से संबंधित सेटिंग्स को परिभाषित करता है, जिसमें उपलब्ध लोकेल और डिफ़ॉल्ट लोकेल शामिल हैं।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
locales | एप्लिकेशन में समर्थित लोकेल की सूची। | string[] | [Locales.ENGLISH] | ['en', 'fr', 'es'] | |
requiredLocales | एप्लिकेशन में आवश्यक लोकेल की सूची। | string[] | [] | [] | • यदि खाली है, तो strict मोड में सभी लोकेल आवश्यक हैं।• सुनिश्चित करें कि आवश्यक लोकेल भी locales फ़ील्ड में परिभाषित हैं। |
strictMode | TypeScript का उपयोग करके अंतर्राष्ट्रीयकृत कंटेंट का एक मजबूत कार्यान्वयन सुनिश्चित करता है। | string | 'inclusive' | • यदि "strict": t फ़ंक्शन को प्रत्येक घोषित लोकेल की परिभाषा की आवश्यकता होती है - यदि कोई अनुपस्थित है या घोषित नहीं है, तो त्रुटि उत्पन्न करता है।• यदि "inclusive": अनुपस्थित लोकेल के लिए चेतावनी देता है लेकिन मौजूदा अघोषित लोकेल के उपयोग की अनुमति देता है।• यदि "loose": किसी भी मौजूदा लोकेल को स्वीकार करता है। | |
defaultLocale | अनुरोधित लोकेल नहीं मिलने की स्थिति में फ़ालबैक के रूप में उपयोग किया जाने वाला डिफ़ॉल्ट लोकेल। | string | Locales.ENGLISH | 'en' | लोकेल निर्धारित करने के लिए उपयोग किया जाता है जब इसे URL, कुकी या हेडर में निर्दिष्ट नहीं किया जाता है। |
एडिटर कॉन्फ़िगरेशन (Editor)
अंतर्निहित विजुअल एडिटर के लिए सेटिंग्स को परिभाषित करता है, जिसमें सर्वर पोर्ट और इनेबल स्टेटस शामिल है।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
applicationURL | एप्लिकेशन का URL। | string | undefined | 'http://localhost:3000' 'https://example.com' process.env.INTLAYER_EDITOR_URL | • सुरक्षा कारणों से एडिटर के ओरिजिन को प्रतिबंधित करने के लिए उपयोग किया जाता है। • यदि '*' पर सेट है, तो एडिटर किसी भी ओरिजिन से सुलभ है। |
port | विजुअल एडिटर सर्वर द्वारा उपयोग किया जाने वाला पोर्ट। | number | 8000 | ||
editorURL | एडिटर सर्वर का URL। | string | 'http://localhost:8000' | 'http://localhost:3000' 'https://example.com' process.env.INTLAYER_EDITOR_URL | • उन ओरिजिन को प्रतिबंधित करने के लिए उपयोग किया जाता है जो एप्लिकेशन के साथ संवाद कर सकते हैं। • यदि '*' पर सेट है, तो यह किसी भी ओरिजिन से सुलभ है।• यदि पोर्ट बदल दिया गया है या एडिटर किसी अन्य डोमेन पर होस्ट किया गया है, तो इसे सेट किया जाना चाहिए। |
cmsURL | Intlayer CMS का URL। | string | 'https://app.intlayer.org' | 'https://app.intlayer.org' | |
backendURL | बैकएंड सर्वर का URL। | string | https://back.intlayer.org | http://localhost:4000 | |
enabled | एप्लिकेशन को विजुअल एडिटर के साथ संवाद करना चाहिए या नहीं। | boolean | false | process.env.NODE_ENV !== 'production' | • यदि false, एडिटर एप्लिकेशन के साथ संवाद नहीं कर सकता।• कुछ परिवेशों के लिए अक्षम करना सुरक्षा बढ़ाता है। |
clientId | intlayer पैकेजों को oAuth2 के माध्यम से बैकएंड पर प्रमाणित करने की अनुमति देता है। अपना एक्सेस टोकन प्राप्त करने के लिए intlayer.org/project पर जाएँ। | string | undefined | undefined | इसे गुप्त रखा जाना चाहिए; पर्यावरण चरों (environment variables) का उपयोग करें। | |
clientSecret | intlayer पैकेजों को oAuth2 के माध्यम से बैकएंड पर प्रमाणित करने की अनुमति देता है। अपना एक्सेस टोकन प्राप्त करने के लिए intlayer.org/project पर जाएँ। | string | undefined | undefined | इसे गुप्त रखा जाना चाहिए; पर्यावरण चरों (environment variables) का उपयोग करें। | |
dictionaryPriorityStrategy | डिक्शनरी प्राथमिकता रणनीति जब स्थानीय और दूरस्थ डिक्शनरी दोनों मौजूद हों। | string | 'local_first' | 'distant_first' | • 'distant_first': स्थानीय डिक्शनरी पर दूरस्थ डिक्शनरी को प्राथमिकता देता है।• 'local_first': दूरस्थ डिक्शनरी पर स्थानीय डिक्शनरी को प्राथमिकता देता है। |
liveSync | एप्लिकेशन सर्वर को CMS विजुअल एडिटर बैकएंड सर्वर में परिवर्तनों का पता चलने पर तुरंत कंटेंट को पुनः लोड करना चाहिए या नहीं। | boolean | true | true | • डिक्शनरी जोड़ने/अपडेट करने पर एप्लिकेशन पेज कंटेंट को रिफ्रेश करता है। • लाइव सिंक कंटेंट को दूसरे सर्वर पर ले जाता है, जो प्रदर्शन को थोड़ा प्रभावित कर सकता है। • दोनों को एक ही मशीन पर होस्ट करने की अनुशंसा की जाती है। |
liveSyncPort | लाइव सिंक सर्वर का पोर्ट। | number | 4000 | 4000 | |
liveSyncURL | लाइव सिंक सर्वर का URL। | string | 'http://localhost:{liveSyncPort}' | 'https://example.com' | डिफ़ॉल्ट रूप से localhost की ओर इशारा करता है; दूरस्थ लाइव सिंक सर्वर की ओर इशारा करने के लिए बदला जा सकता है। |
एनालिटिक्स कॉन्फ़िगरेशन (Analytics)
Intlayer एनालिटिक्स से संबंधित सेटिंग्स को परिभाषित करता है: उपयोगकर्ताओं को वास्तव में दिखाए जाने वाले कंटेंट (पेज व्यू, कंटेंट एक्सपोज़र) को एकत्र करना और कंटेंट पर A/B परीक्षण को सक्षम बनाना।
एनालिटिक्स डिफ़ॉल्ट रूप से सक्षम है (ऑप्ट-आउट): @intlayer/analytics पैकेज इंस्टॉल होते ही और एट्रिब्यूशन के लिए प्रोजेक्ट कुंजी (editor.clientId) कॉन्फ़िगर होते ही संग्रहण शुरू हो जाता है। analytics.enabled को false पर सेट करें — या पैकेज इंस्टॉल न करें — और संपूर्ण एनालिटिक्स इंटीग्रेशन आपके एप्लिकेशन बंडल से हटा दिया जाता है (dead-code elimination)।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | प्रकार | डिफ़ॉल्ट | उदाहरण | नोट |
|---|---|---|---|---|---|
enabled | एनालिटिक्स संग्रहण सक्षम करता है (पेज व्यू, कंटेंट एक्सपोज़र, A/B इवेंट्स)। | boolean | true | false | @intlayer/analytics इंस्टॉल होना और एट्रिब्यूशन के लिए editor.clientId सेट होना आवश्यक है; अन्यथा enabled के true होने पर भी एनालिटिक्स अक्षम रहता है। |
flushInterval | बैकएंड को स्वचालित बैच फ़्लश के बीच मिलीसेकंड। | number | 20000 | 10000 | |
sampleRate | रिकॉर्ड करने के लिए सत्रों का अंश, 0 (कोई नहीं) से 1 (सभी) तक। | number | 1 | 0.5 | सैंपलिंग प्रति सत्र निर्धारक (deterministic) है, इसलिए एक रिकॉर्ड किया गया सत्र अपने सभी इवेंट्स की रिपोर्ट करता है। |
राउटींग कॉन्फ़िगरेशन (Routing)
URL संरचना, लोकेल स्टोरेज और मिडलवेयर प्रबंधन सहित राउटींग व्यवहार को नियंत्रित करने वाली सेटिंग्स।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
mode | लोकेल प्रबंधन के लिए URL राउटींग मोड। | 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' | 'prefix-no-default' | 'prefix-no-default': /dashboard (en) या /fr/dashboard (fr)। 'prefix-all': /en/dashboard । 'no-prefix': लोकेल अन्य तरीकों से प्रबंधित किया जाता है। 'search-params': /dashboard?locale=fr | कुकी प्रबंधन या लोकेल स्टोरेज को प्रभावित नहीं करता है। |
enableProxy | Intlayer लोकेल-रूटिंग प्रॉक्सी (मिडलवेयर) को सक्षम करता है। | boolean | undefined | undefined (auto) | true | • अनसेट (auto): dev और preview सर्वर कुकीज़/हेडर में संग्रहित लोकेल को रीडायरेक्ट स्रोत के रूप में अनदेखा करते हैं; प्रीफ़िक्स, सहेजना और Accept-Language पहचान अब भी लागू होती है। प्रोडक्शन में true जैसा व्यवहार।• true: हर जगह पूर्ण व्यवहार।• false: कोई लोकेल रूटिंग नहीं। Next.js में intlayerProxy मिडलवेयर पास-थ्रू बन जाता है। |
storage | क्लाइंट पर लोकेल स्टोरेज का कॉन्फ़िगरेशन। | false | 'cookie' | 'localStorage' | 'sessionStorage' | 'header' | CookiesAttributes | StorageAttributes | Array | ['cookie', 'header'] | 'localStorage' [{ type: 'cookie', name: 'custom-locale', secure: true }] | नीचे स्टोरेज मापदंडों की तालिका देखें। |
basePath | एप्लिकेशन URL के लिए बेस पाथ। | string | '' | '/my-app' | यदि एप्लिकेशन https://example.com/my-app पते पर चलता है, तो basePath '/my-app' है और URL https://example.com/my-app/en बन जाते हैं। |
rewrite | कस्टम URL पुनर्लेखन नियम जो विशिष्ट पाथ के लिए डिफ़ॉल्ट राउटींग मोड को ओवरराइड करते हैं। गतिशील मापदंडों [param] का समर्थन करता है। | Record<string, StrictModeLocaleMap<string>> | undefined | नीचे उदाहरण देखें | • पुनर्लेखन नियमों को mode पर प्राथमिकता दी जाती है।• Next.js और Vite के साथ काम करता है। • getLocalizedUrl() स्वचालित रूप से उचित नियमों को लागू करता है।• कस्टम URL पुनर्लेखन देखें। |
domains | डोमेन-आधारित रूटिंग के लिए लोकेल को डोमेन होस्टनामों से मैप करता है। सेट होने पर, उस लोकेल के लिए URL इस डोमेन को बेस (पूर्ण URL) के रूप में उपयोग करते हैं और पाथ में कोई लोकेल प्रीफिक्स नहीं जोड़ा जाता है। | Partial<Record<Locale, string>> | undefined | { zh: 'intlayer.zh', fr: 'intlayer.org' } | • होस्टनाम में शामिल न होने पर डिफ़ॉल्ट प्रोटोकॉल https:// है।• डोमेन स्वयं लोकेल की पहचान करता है, इसलिए /zh/ प्रीफिक्स नहीं जोड़ा जाता है।• getLocalizedUrl('/', 'zh'), https://intlayer.zh/ लौटाता है। |
rewrite उदाहरण:
कोड को क्लिपबोर्ड पर कॉपी करें
स्टोरेज मापदंड (Storage)
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| मान | टिप्पणी | विवरण |
|---|---|---|
'cookie' | • GDPR अनुपालन के लिए समुचित उपयोगकर्ता सहमति सुनिश्चित करें। • CookiesAttributes ({ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }) के माध्यम से कॉन्फ़िगर करने योग्य। | लोकेल को कुकीज़ में संग्रहीत करता है - क्लाइंट और सर्वर दोनों पर सुलभ। |
'localStorage' | • जब तक स्पष्ट रूप से हटाया न जाए, तब तक समाप्त नहीं होता। • Intlayer Proxy की इस तक पहुँच नहीं है। • StorageAttributes ({ type: 'localStorage', name: 'custom-locale' }) के माध्यम से कॉन्फ़िगर करने योग्य। | बिना किसी समय सीमा के ब्राउज़र में लोकेल संग्रहीत करता है - केवल क्लाइंट-साइड। |
'sessionStorage' | • टैब/विंडो बंद करने पर हटा दिया जाता है। • Intlayer Proxy की इस तक पहुँच नहीं है। • StorageAttributes ({ type: 'sessionStorage', name: 'custom-locale' }) के माध्यम से कॉन्फ़िगर करने योग्य। | पेज सत्र की अवधि के लिए लोकेल संग्रहीत करता है - केवल क्लाइंट-साइड। |
'header' | • API कॉल के लिए उपयोगी। • क्लाइंट-साइड की इस तक पहुँच नहीं है। • StorageAttributes ({ type: 'header', name: 'custom-locale' }) के माध्यम से कॉन्फ़िगर करने योग्य। | HTTP हेडर के माध्यम से लोकेल संग्रहीत करता है या पास करता है - केवल सर्वर-साइड। |
कुकीज़ गुण (Cookies Attributes)
कुकीज़ में स्टोरेज का उपयोग करते समय, अतिरिक्त गुण सेट किए जा सकते हैं:
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
name | कुकी का नाम। डिफ़ॉल्ट: 'INTLAYER_LOCALE' | string |
domain | कुकी डोमेन। डिफ़ॉल्ट: undefined | string |
path | कुकी पाथ। डिफ़ॉल्ट: undefined | string |
secure | HTTPS की आवश्यकता। डिफ़ॉल्ट: undefined | boolean |
httpOnly | HTTP-only फ़्लैग। डिफ़ॉल्ट: undefined | boolean |
sameSite | SameSite पॉलिसी। | 'strict' | 'lax' | 'none' |
expires | एक number निर्माण से दिनों को दर्शाता है; एक Date (या ISO दिनांक स्ट्रिंग) एक पूर्ण समाप्ति है। डिफ़ॉल्ट: undefined | Date | number | string |
maxAge | निर्माण से सेकंड में जीवनकाल। यह expires पर प्राथमिकता लेता है। डिफ़ॉल्ट: undefined | number |
स्टोरेज गुण (Storage Attributes)
localStorage या sessionStorage का उपयोग करते समय:
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
type | स्टोरेज का प्रकार। | 'localStorage' | 'sessionStorage' |
name | स्टोरेज में की (key) का नाम। डिफ़ॉल्ट: 'INTLAYER_LOCALE' | string |
कॉन्फ़िगरेशन उदाहरण
यहाँ नए v7 राउटींग संरचना के लिए कुछ सामान्य कॉन्फ़िगरेशन उदाहरण दिए गए हैं:
मूल कॉन्फ़िगरेशन (डिफ़ॉल्ट):
कोड को क्लिपबोर्ड पर कॉपी करें
GDPR अनुपालन के साथ कॉन्फ़िगरेशन:
कोड को क्लिपबोर्ड पर कॉपी करें
सर्च पैरामीटर्स (Search Params) मोड:
कोड को क्लिपबोर्ड पर कॉपी करें
कस्टम स्टोरेज के साथ नो-प्रीफिक्स मोड:
कोड को क्लिपबोर्ड पर कॉपी करें
गतिशील पाथ के साथ कस्टम URL पुनर्लेखन:
कोड को क्लिपबोर्ड पर कॉपी करें
कंटेंट कॉन्फ़िगरेशन (Content)
एप्लिकेशन में कंटेंट को कैसे प्रबंधित किया जाता है, निर्देशिका नाम, फ़ाइल एक्सटेंशन और व्युत्पन्न कॉन्फ़िगरेशन सहित सेटिंग्स।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
watch | इंगित करता है कि डिक्शनरी के पुनर्जन्म के लिए कंटेंट घोषणा फ़ाइलों में परिवर्तनों को Intlayer द्वारा ट्रैक किया जाना चाहिए या नहीं। | boolean | true | ||
fileExtensions | डिक्शनरी संकलित करते समय स्कैन करने के लिए फ़ाइल एक्सटेंशन। | string[] | ['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.json5', '.content.jsonc', '.content.tsx', '.content.jsx'] | ['.data.ts', '.data.js', '.data.json'] | अनुकूलन संघर्षों से बचने में मदद कर सकता है। |
contentDir | उस निर्देशिका का पाथ जहाँ कंटेंट परिभाषा फ़ाइलें (.content.*) रखी जाती हैं। | string[] | ['.'] | ['src', '../../ui-library', require.resolve("@my-package/content"), '@my-package/content'] | कंटेंट फ़ाइलों की ट्रैकिंग और डिक्शनरी के पुनर्जन्म के लिए उपयोग किया जाता है। |
codeDir | उस निर्देशिका का पाथ जहाँ कोड रखा जाता है, बेस निर्देशिका के सापेक्ष। | string[] | ['.'] | ['src', '../../ui-library'] | • ट्रांसफ़ॉर्मेशन (अनावश्यक हटाना, ऑप्टिमाइज़ेशन) के लिए कोड फ़ाइलों की ट्रैकिंग के लिए उपयोग किया जाता है। • contentDir से अलग करने से प्रदर्शन बढ़ सकता है। |
excludedPath | कंटेंट स्कैनिंग से बाहर रखी गई निर्देशिकाएँ। | string[] | ['**/node_modules/**', '**/dist/**', '**/build/**', '**/.intlayer/**', '**/.next/**', '**/.nuxt/**', '**/.expo/**', '**/.vercel/**', '**/.turbo/**', '**/.tanstack/**'] | वर्तमान में उपयोग नहीं किया गया है; भविष्य के लिए नियोजित है। | |
formatCommand | Intlayer द्वारा स्थानीय रूप से कंटेंट फ़ाइलें लिखने समय उन्हें फ़ॉर्मेट करने का कमांड। | string | undefined | 'npx prettier --write "{{file}}" --log-level silent' (Prettier), 'npx biome format "{{file}}" --write --log-level none' (Biome), 'npx eslint --fix "{{file}}" --quiet' (ESLint) | • {{file}} को फ़ाइल पाथ से बदल दिया जाएगा।• यदि परिभाषित नहीं है, तो Intlayer स्वचालित रूप से निर्धारित करता है (prettier, biome, eslint का परीक्षण करता है)। |
System Configuration
Intlayer के आंतरिक पथ और आउटपुट परिणामों से संबंधित सेटिंग्स। ये सेटिंग्स आम तौर पर आंतरिक हैं और उपयोगकर्ता द्वारा संशोधित करने की आवश्यकता नहीं होनी चाहिए।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| Field | Description | Type | Default | Example | Note |
|---|---|---|---|---|---|
baseDir | प्रोजेक्ट के लिए बेस डायरेक्टरी। | string | process.cwd() | '/path/to/project' | सभी Intlayer-संबंधित डायरेक्टरी को resolve करने के लिए उपयोग किया जाता है। |
dictionariesDir | लोकलाइजेशन डिक्शनरी को स्टोर करने के लिए डायरेक्टरी पथ। | string | '.intlayer/dictionary' | ||
moduleAugmentationDir | Module augmentation के लिए डायरेक्टरी, जो बेहतर IDE सुझाव और टाइप चेकिंग की अनुमति देती है। | string | '.intlayer/types' | 'intlayer-types' | सुनिश्चित करें कि यह tsconfig.json में शामिल है। |
unmergedDictionariesDir | अनमर्ज्ड डिक्शनरी को स्टोर करने के लिए डायरेक्टरी। | string | '.intlayer/unmerged_dictionary' | ||
typesDir | डिक्शनरी प्रकार को स्टोर करने के लिए डायरेक्टरी। | string | '.intlayer/types' | ||
mainDir | डायरेक्टरी जहां मुख्य एप्लिकेशन फाइलें स्टोर की जाती हैं। | string | '.intlayer/main' | ||
configDir | डायरेक्टरी जहां कॉन्फ़िगरेशन फाइलें स्टोर की जाती हैं। | string | '.intlayer/config' | ||
cacheDir | डायरेक्टरी जहां कैश फाइलें स्टोर की जाती हैं। | string | '.intlayer/cache' |
डिक्शनरी कॉन्फ़िगरेशन (Dictionary)
डिक्शनरी संचालन को नियंत्रित करने वाले मापदंड, जिसमें ऑटो-फिल व्यवहार और कंटेंट जनरेशन शामिल है।
यह dictionary configuration दो मुख्य उद्देश्यों को पूरा करता है:
- Default Values: content declaration files बनाते समय default values को define करें
- Fallback Behavior: जब specific fields define नहीं हों तो fallback values प्रदान करें, जिससे आप dictionary operation behavior को globally define कर सकें
कंटेंट डिक्लेरेशन फ़ाइलों और कॉन्फ़िगरेशन वैल्यूज़ कैसे लागू की जाती हैं इसके बारे में अधिक जानकारी के लिए, कंटेंट फ़ाइल डॉक्यूमेंटेशन देखें।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
fill | नियंत्रित करता है कि ऑटो-फिल (AI अनुवाद) आउटपुट फ़ाइलें कैसे उत्पन्न होती हैं। | boolean | FilePathPattern | Partial<Record<Locale, boolean | FilePathPattern>> | true | { en: '/locales/en/{{key}}.json', fr: ({ key }) => '/locales/fr/${key}.json', es: false } | • true: डिफ़ॉल्ट पाथ (स्रोत के समान फ़ाइल)।• false: अक्षम करें।• टेम्पलेट स्ट्रिंग/फ़ंक्शन प्रति लोकेल फ़ाइलें उत्पन्न करता है। • प्रति लोकेल ऑब्जेक्ट: प्रत्येक लोकेल अपने टेम्पलेट से मेल खाता है; false उस लोकेल को अनदेखा करता है।• {{locale}} का समावेश प्रति लोकेल जनरेशन को सक्रिय करता है।• डिक्शनरी स्तर पर fill हमेशा इस वैश्विक सेटिंग पर प्राथमिकता लेता है। |
description | एडिटर और CMS को डिक्शनरी के उद्देश्य को समझने में मदद करता है। AI का उपयोग करके अनुवाद उत्पन्न करने के लिए संदर्भ के रूप में भी उपयोग किया जाता है। | string | undefined | 'User profile section' | |
locale | डिक्शनरी को किसी विशिष्ट लोकेल के प्रारूप में बदल देता है। प्रत्येक घोषित फ़ील्ड एक अनुवाद नोड बन जाता है। यदि अनुपस्थित है, तो डिक्शनरी को बहुभाषी माना जाता है। | LocalesValues | undefined | 'en' | यदि डिक्शनरी कई अनुवादों के बजाय एक विशिष्ट लोकेल के लिए है, तो इसका उपयोग करें। |
contentAutoTransformation | कंटेंट स्ट्रिंग्स को स्वचालित रूप से टाइप किए गए नोड्स (मार्कडाउन, HTML या सम्मिलन) में रूपांतरित करता है। | boolean | { markdown?: boolean; html?: boolean; insertion?: boolean } | false | true | • मार्कडाउन : ### Title → md('### Title') ।• HTML : <div>Title</div> → html('<div>Title</div>') ।• सम्मिलन : Hello {{name}} → insert('Hello {{name}}') । |
location | इंगित करता है कि डिक्शनरी फ़ाइलें कहाँ संग्रहीत हैं और वे CMS के साथ कैसे सिंक की जाती हैं। | 'local' | 'remote' | 'hybrid' | 'plugin' | string | 'local' | 'hybrid' | • 'local': केवल स्थानीय प्रबंधन।• 'remote': केवल दूरस्थ प्रबंधन (CMS)।• 'hybrid': स्थानीय और दूरस्थ प्रबंधन दोनों।• 'plugin' या कस्टम स्ट्रिंग: प्लगइन या कस्टम स्रोत द्वारा प्रबंधन। |
importMode | डिक्शनरी कैसे आयात की जाती है, इसे नियंत्रित करता है। | 'static' | 'dynamic' | 'fetch' | 'static' | 'dynamic' | • 'static': स्थिर आयात।• 'dynamic': Suspense के माध्यम से गतिशील आयात।• 'fetch': लाइव सिंक API के माध्यम से फ़ेच; विफल होने पर 'dynamic' पर वापस जाना।• @intlayer/babel और @intlayer/swc प्लगइन्स की आवश्यकता होती है।• की (keys) को स्थिर रूप से घोषित किया जाना चाहिए। • यदि optimize बंद है, तो अनदेखा किया जाता है।• getIntlayer, getDictionary आदि को प्रभावित नहीं करता है। |
format | प्रोजेक्ट में सभी शब्दकोशों के लिए डिफ़ॉल्ट संदेश प्रारूप। | 'intlayer' | 'icu' | 'i18next' | 'vue-i18n' | 'po' | 'intlayer' | 'icu' | • 'intlayer': मूल intlayer प्रारूप।• 'icu': ICU संदेश प्रारूप।• 'i18next': i18next प्रारूप।• 'vue-i18n': Vue I18n प्रारूप।• 'po': GNU Gettext PO प्रारूप। |
priority | डिक्शनरी प्राथमिकता। डिक्शनरी के बीच संघर्षों को सुलझाने के दौरान उच्च मान निम्न मानों पर जीतते हैं। | number | undefined | 1 | |
live | अप्रचलित - importMode: 'fetch' का उपयोग करें। इंगित किया गया कि डिक्शनरी कंटेंट को लाइव सिंक API के माध्यम से गतिशील रूप से फ़ेच किया जाना चाहिए या नहीं। | boolean | undefined | v8.0.0 में नाम बदलकर importMode: 'fetch' कर दिया गया। | |
schema | JSON स्कीमा सत्यापन के लिए Intlayer द्वारा स्वचालित रूप से जेनरेट किया गया। | 'https://intlayer.org/schema.json' | ऑटो-जनरेशन | मैन्युअल रूप से संपादित न करें। | |
title | एडिटर और CMS में डिक्शनरी की पहचान करने में मदद करता है। | string | undefined | 'User Profile' | |
tags | डिक्शनरी को श्रेणीबद्ध करता है और एडिटर और AI के लिए संदर्भ या निर्देश प्रदान करता है। | string[] | undefined | ['user', 'profile'] | |
version | दूरस्थ डिक्शनरी का संस्करण; वर्तमान में उपयोग किए जा रहे संस्करण को ट्रैक करने में मदद करता है। | string | undefined | '1.0.0' | • CMS में प्रबंधित। • स्थानीय रूप से संपादित न करें। |
fill उदाहरण:
कोड को क्लिपबोर्ड पर कॉपी करें
लॉगर कॉन्फ़िगरेशन (Log)
Intlayer लॉग आउटपुट को अनुकूलित करने के लिए मापदंड।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
mode | लॉगर मोड इंगित करता है। | 'default' | 'verbose' | 'disabled' | 'default' | 'verbose' | • 'verbose': डिबगिंग के लिए अधिक जानकारी लॉग करता है।• 'disabled': लॉगर को पूरी तरह से बंद कर देता है। |
prefix | लॉग में सभी संदेशों के लिए प्रीफिक्स। | string | '[intlayer] ' | '[my prefix] ' |
AI कॉन्फ़िगरेशन (AI)
Intlayer की AI सुविधाओं को नियंत्रित करने वाली सेटिंग्स, जिनमें प्रदाता, मॉडल और API की (key) शामिल हैं।
यह कॉन्फ़िगरेशन वैकल्पिक है यदि आप एक्सेस की (key) के साथ Intlayer Dashboard पर पंजीकृत हैं। Intlayer आपकी आवश्यकताओं के लिए सबसे कुशल और लागत प्रभावी AI समाधान को स्वचालित रूप से प्रबंधित करेगा। डिफ़ॉल्ट विकल्पों का उपयोग करना सबसे अच्छा दीर्घकालिक समर्थन की गारंटी देता है क्योंकि Intlayer को सबसे अद्यतित मॉडल का उपयोग करने के लिए लगातार अपडेट किया जाता है।
यदि आप अपनी स्वयं की API की या किसी विशिष्ट मॉडल का उपयोग करना पसंद करते हैं, तो आप अपना AI कॉन्फ़िगरेशन परिभाषित कर सकते हैं।
यह AI कॉन्फ़िगरेशन आपके Intlayer परिवेश में विश्व स्तर पर उपयोग किया जाएगा। CLI कमांड इन सेटिंग्स का उपयोग fill जैसे कमांड के लिए डिफ़ॉल्ट रूप से करेंगे, साथ ही SDK, विजुअल एडिटर और CMS भी। आप इन डिफ़ॉल्ट मानों को कमांड मापदंडों के माध्यम से विशिष्ट उपयोग के मामलों के लिए ओवरराइड कर सकते हैं।
Intlayer अधिकतम लचीलेपन के लिए कई AI प्रदाताओं का समर्थन करता है। वर्तमान में, समर्थित प्रदाता हैं:
- OpenAI (डिफ़ॉल्ट)
- Anthropic Claude
- Mistral AI
- DeepSeek
- Google Gemini
- Google AI Studio
- Google Vertex
- Meta Llama
- Ollama
- OpenRouter
- Alibaba Cloud
- Fireworks
- Hugging Face
- Groq
- Amazon Bedrock
- Together.ai
- LM Studio
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
provider | Intlayer AI सुविधाओं के लिए उपयोग किया जाने वाला प्रदाता। | 'openai' | 'anthropic' | 'mistral' | 'deepseek' | 'gemini' | 'ollama' | 'openrouter' | 'alibaba' | 'fireworks' | 'groq' | 'huggingface' | 'bedrock' | 'googleaistudio' | 'googlevertex' | 'togetherai' | 'lmstudio' | 'moonshotai' | undefined | 'anthropic' | विभिन्न प्रदाताओं को विभिन्न API की की आवश्यकता होती है और उनकी कीमतें अलग होती हैं। |
model | AI सुविधाओं के लिए उपयोग किया जाने वाला मॉडल। | string | कोई नहीं | 'gpt-4o-2024-11-20' | विशिष्ट मॉडल प्रदाता पर निर्भर करता है। |
temperature | AI प्रतिक्रियाओं की यादृच्छिकता (randomness) को नियंत्रित करता है। | number | कोई नहीं | 0.1 | उच्च तापमान = अधिक रचनात्मक और कम पूर्वानुमेय। |
apiKey | चुने गए प्रदाता के लिए आपकी API की। | string | कोई नहीं | process.env.OPENAI_API_KEY | इसे गुप्त रखा जाना चाहिए; पर्यावरण चरों का उपयोग करें। |
applicationContext | AI को अधिक सटीक अनुवाद उत्पन्न करने में मदद करने के लिए आपके एप्लिकेशन के बारे में अतिरिक्त संदर्भ (डोमेन, लक्षित दर्शक, टोन, शब्दावली)। | string | कोई नहीं | 'मेरा अपना एप्लिकेशन संदर्भ' | नियम जोड़ने के लिए उपयोग किया जा सकता है (जैसे: "आपको URL को रूपांतरित नहीं करना चाहिए" )। |
baseURL | AI API के लिए बेस URL। | string | कोई नहीं | 'https://api.openai.com/v1' 'http://localhost:5000' | स्थानीय या कस्टम AI API एंडपॉइंट की ओर इशारा कर सकता है। |
dataSerialization | AI सुविधाओं के लिए डेटा सीरियलाइज़ेशन प्रारूप। | 'json' | 'toon' | undefined | 'toon' | • 'json': डिफ़ॉल्ट, विश्वसनीय; अधिक टोकन का उपयोग करता है।• 'toon': कम टोकन, कम स्थिर।• अतिरिक्त मापदंड संदर्भ के रूप में मॉडल को पास किए जाते हैं (तर्क प्रयास आदि)। |
बिल्ड कॉन्फ़िगरेशन (Build)
Intlayer आपके एप्लिकेशन के अंतर्राष्ट्रीयकरण को कैसे ऑप्टिमाइज़ और संकलित करता है, इसे नियंत्रित करने वाले मापदंड।
बिल्ड विकल्प @intlayer/babel और @intlayer/swc प्लगइन्स पर लागू होते हैं।
डेवलपमेंट मोड में, Intlayer विकास प्रक्रिया को सरल बनाने के लिए डिक्शनरी के स्थिर आयात का उपयोग करता है।
ऑप्टिमाइज़ेशन के दौरान, Intlayer कोड स्प्लिटिंग (chunking) को ऑप्टिमाइज़ करने के लिए डिक्शनरी कॉल को बदल देगा ताकि परिणामी बंडल केवल उन्हीं डिक्शनरी को आयात करे जो वास्तव में उपयोग की जाती हैं।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
mode | बिल्ड मोड को नियंत्रित करता है। | 'auto' | 'manual' | 'auto' | 'manual' | • 'auto': एप्लिकेशन बिल्ड के दौरान बिल्ड स्वचालित रूप से शुरू होता है।• 'manual': केवल एक स्पष्ट बिल्ड कमांड पर निष्पादित होता है।• डिक्शनरी बिल्ड को बंद करने के लिए उपयोग किया जा सकता है (जैसे Node.js परिवेशों में चलने से बचने के लिए)। |
optimize | नियंत्रित करता है कि बिल्ड ऑप्टिमाइज़ेशन होना चाहिए या नहीं। | boolean | undefined | process.env.NODE_ENV === 'production' | • यदि परिभाषित नहीं है, तो फ्रेमवर्क बिल्ड (Vite/Next.js) के दौरान ऑप्टिमाइज़ेशन शुरू होता है। • true देव मोड में भी ऑप्टिमाइज़ेशन को बाध्य करता है।• false इसे बंद कर देता है।• चालू होने पर, चंकिंग ऑप्टिमाइज़ेशन के लिए डिक्शनरी कॉल को बदल देता है। • @intlayer/babel और @intlayer/swc प्लगइन्स की आवश्यकता होती है। |
minify | इंगित करता है कि बंडल के आकार को कम करने के लिए डिक्शनरी को मिनिअफ़ाइ किया जाना चाहिए या नहीं। | boolean | false | • बंडल को मिनिअफ़ाइ किया जाना चाहिए या नहीं। • डिफ़ॉल्ट: प्रोडक्शन में true।• optimize अक्षम होने पर यह विकल्प अनदेखा किया जाएगा।• editor.enabled सत्य होने पर यह विकल्प अनदेखा किया जाएगा। | |
prune | इंगित करता है कि डिक्शनरी में अप्रयुक्त कीज़ (unused keys) को हटाया जाना चाहिए या नहीं। | boolean | true | • बंडल को छोटा (pruned) किया जाना चाहिए या नहीं। • डिफ़ॉल्ट: प्रोडक्शन में true।• optimize अक्षम होने पर यह विकल्प अनदेखा किया जाएगा। | |
checkTypes | इंगित करता है कि बिल्ड को TypeScript टाइप्स की जाँच करनी चाहिए और त्रुटियों को लॉग करना चाहिए या नहीं। | boolean | false | बिल्ड प्रक्रिया को धीमा कर सकता है। | |
chunkGrouping | क्या प्रति-लोकेल डिक्शनरी चंक्स को उस कोड-स्प्लिट सीमा के अनुसार समूहित किया जाए जो उनका उपयोग करती है। | boolean | true | • समूहीकरण के बिना, कई घटकों से बना पेज प्रत्येक डिक्शनरी के लिए एक अनुरोध भेजता है। • कई सीमाओं से पहुँची जाने वाली डिक्शनरियाँ साझा चंक में चली जाती हैं, इसलिए कोई पेज दूसरे पेज की सामग्री नहीं भेजता। • केवल importMode: 'dynamic' का उपयोग करने वाली डिक्शनरियों पर लागू होता है।• केवल क्लाइंट बिल्ड पर, और केवल बंडलिंग के समय लागू होता है (dev में नहीं)। | |
dictionariesPreload | क्या डिक्शनरी को उस चंक के साथ लोड किया जाए जो उसका उपयोग करता है, बजाय उस चंक के रेंडर होने के बाद प्राप्त करने के। | boolean | true | • उत्पन्न एंट्री पॉइंट शीर्ष स्तर पर ब्राउज़िंग लोकेल की प्रतीक्षा करता है, इसलिए आलसी रूप से लोड होने वाला रूट तब तक लोड नहीं माना जाता जब तक उसकी सामग्री उपलब्ध न हो। • पठन सस्पेंड होने के बजाय समकालिक रूप से रेंडर होते हैं, इसलिए नेविगेशन में अब लोडिंग स्थिति नहीं झलकती। • केवल हल की गई लोकेल की प्रतीक्षा की जाती है, इसलिए पेज केवल वही भाषा डाउनलोड करता है जो वह दिखाता है। • केवल क्लाइंट बिल्ड में importMode: 'dynamic' का उपयोग करने वाली डिक्शनरियों पर लागू होता है।• टॉप-लेवल await समर्थित बंडलर आवश्यक है (Vite, esbuild)। | |
outputFormat | डिक्शनरी के आउटपुट स्वरूप को नियंत्रित करता है। | ('esm' | 'cjs')[] | ['esm', 'cjs'] | ['cjs'] | |
traversePattern | उन फ़ाइलों को परिभाषित करने वाले पैटर्न जिन्हें ऑप्टिमाइज़ेशन के दौरान स्कैन किया जाना चाहिए। | string[] | ['**/*.{tsx,ts,js,mjs,cjs,jsx,vue,svelte,svte}', '!**/node_modules/**', '!**/dist/**', '!**/.intlayer/**', '!**/*.config.*', '!**/*.test.*', '!**/*.spec.*', '!**/*.stories.*'] | ['src/**/*.{ts,tsx}', '../ui-library/**/*.{ts,tsx}', '!**/node_modules/**'] | • बिल्ड प्रदर्शन बढ़ाने के लिए ऑप्टिमाइज़ेशन को प्रासंगिक फ़ाइलों तक सीमित करें। • यदि optimize बंद होता, तो अनदेखा कर दिया जाता।• ग्लोब पैटर्न का उपयोग करता है। |
कंपाइलर कॉन्फ़िगरेशन (Compiler)
Intlayer कंपाइलर को नियंत्रित करने वाली सेटिंग्स, जो आपके घटकों से सीधे डिक्शनरी निकालती है।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
enabled | इंगित करता है कि डिक्शनरी निकालने के लिए कंपाइलर सक्षम होना चाहिए या नहीं। | boolean | 'build-only' | true | 'build-only' | 'build-only' तेज़ बिल्ड के लिए विकास के दौरान कंपाइलर को छोड़ देता है; केवल बिल्ड कमांड के दौरान निष्पादित होता है। |
dictionaryKeyPrefix | निकाली गई डिक्शनरी कीज़ के लिए प्रीफिक्स। | string | '' | 'my-prefix-' | संघर्षों से बचने के लिए जेनरेट की गई की (key) (फ़ाइल नाम के आधार पर) में जोड़ा जाता है। |
saveComponents | घटकों को उनके रूपांतरण के बाद सहेजना है या नहीं। | boolean | false | • यदि true, मूल फ़ाइलों को उनके रूपांतरित संस्करणों के साथ अधिलेखित (overwrite) कर देता है।• कंपाइलर को एक बार चलाने के बाद हटाया जा सकता है। | |
output | आउटपुट फ़ाइलों के लिए पथ परिभाषित करता है। outputDir को प्रतिस्थापित करता है। टेम्पलेट चरों का समर्थन करता है: {{fileName}}, {{key}}, {{locale}}, {{extension}}, {{componentFileName}}, {{componentExtension}}, {{format}}, {{componentFormat}}, {{componentDirPath}} । | boolean | FilePathPattern | Partial<Record<Locale, boolean | FilePathPattern>> | undefined | './{{fileName}}{{extension}}' '/locales/{{locale}}/{{key}}.json' { en: ({ key }) => './locales/en/${key}.json', fr: '...', es: false } | • ./ पथ घटक निर्देशिका के सापेक्ष हल किए जाते हैं।• / पथ प्रोजेक्ट बेस के सापेक्ष।• {{locale}} प्रति लोकेल जनरेशन को शामिल करता है।• प्रति लोकेल ऑब्जेक्ट नोटेशन का समर्थन करता है। |
noMetadata | यदि true, कंपाइलर आउटपुट से डिक्शनरी मेटाडेटा (की (key), कंटेंट रैपर) हटा देता है। | boolean | false | false → {"key":"my-key","content":{"key":"value"}} true → {"key":"value"} | • i18next स्वरूप या ICU MessageFormat JSON आउटपुट के लिए उपयोगी। • loadJSON प्लगइन के साथ अच्छी तरह काम करता है। |
dictionaryKeyPrefix | डिक्शनरी की प्रीफिक्स | string | '' | निकाले गए डिक्शनरी कीज़ के लिए वैकल्पिक प्रीफिक्स जोड़ें |
कस्टम स्कीमा (Custom Schemas)
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
schemas | आपको अपनी डिक्शनरी की संरचना को मान्य करने के लिए Zod स्कीमा को परिभाषित करने की अनुमति देता है। | Record<string, ZodSchema> |
प्लगइन्स (Plugins)
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
plugins | शामिल करने के लिए Intlayer प्लगइन्स की सूची। | IntlayerPlugin[] |
अक्सर पूछे जाने वाले प्रश्न
आपके प्रोजेक्ट रूट में, package.json के बगल में। Intlayer intlayer.config.ts, intlayer.config.js, intlayer.config.mjs, या intlayer.config.cjs के लिए कार्यशील निर्देशिका और मूल निर्देशिकाओं को स्कैन करता है। आप CLI कमांड में --config ध्वज के माध्यम से एक कस्टम पथ भी निर्दिष्ट कर सकते हैं।
नेमस्पेस-आधारित सेटअपों की तुलना में बहुत कम, क्योंकि एक पृष्ठ कभी भी उस कैटलॉग को डाउनलोड नहीं करता है जिसे वह रेंडर नहीं करता है। सर्वर पर रेंडर किया गया मार्कअप सर्वर पर ही अपनी सामग्री को हल करता है, और बिल्ड-टाइम कंपाइलर useIntlayer कॉल को घटक द्वारा उपयोग की जाने वाली सटीक शब्दकोश प्रविष्टियों से बदल देता है, इसलिए अप्रयुक्त कुंजियों और भाषाओं को हटा दिया जाता है। गतिशील शब्दकोश शेष को प्रति लोकेल विभाजित करते हैं। पारंपरिक विकल्पों की तुलना में, Intlayer बंडल और पृष्ठ आकार को 50% तक कम करता है। बंडल अनुकूलन और बेंचमार्क देखें।
हाँ, और इसके दो रास्ते हैं। आप i18next माइग्रेशन गाइड या next-intl माइग्रेशन गाइड के साथ सामग्री को धीरे-धीरे स्थानांतरित कर सकते हैं। या आप अपने वर्तमान API को पूरी तरह से बनाए रख सकते हैं: संगतता एडेप्टर i18next, react-i18next, next-intl, next-i18next, react-intl, use-intl, vue-i18n और Lingui के समान API प्रदान करते हैं, लेकिन Intlayer शब्दकोशों द्वारा संचालित होते हैं, जिससे केवल आयात बदलते हैं और घटक कोड समान रहता है।
हाँ। sync JSON plugin आपकी /messages/{locale}/{namespace}.json फ़ाइलों को सत्य का स्रोत बनाए रखता है और दोनों दिशाओं में उनसे Intlayer dictionaries बनाता है। sync PO plugin gettext catalogs के लिए भी ऐसा ही करता है, और per locale files आपको locales को एक फ़ाइल में समूहीकृत करने के बजाय भाषा के अनुसार content को विभाजित करने देते हैं।
नहीं। npx intlayer extract चलाएं और Intlayer आपकी source files को पढ़ता है, user facing strings को निकालता है और प्रत्येक के बगल में एक .content file लिखता है, इसलिए आप strings को एक catalog में एक-एक करके कॉपी करने के बजाय एक diff की समीक्षा करते हैं। extract command देखें।
पूरी तरह से स्वचालित वर्कफ़्लो के लिए, Intlayer Compiler JSX, TSX, Vue और Svelte कोड पर निर्माण समय के दौरान भी यही करता है, प्रत्येक परिवर्तन पर शब्दकोश उत्पन्न करता है जिससे कुंजियों को मैन्युअल रूप से बनाए रखने की आवश्यकता समाप्त हो जाती है।
पाँच उपकरण, सभी वैकल्पिक:
- VS Code extension:
useIntlayerकुंजी से उसे घोषित करने वाली सामग्री फ़ाइल पर जाएं, घटकों से सामग्री निकालें, और कमांड पैलेट या Intlayer टैब से build, fill, test, push और pull चलाएं। - LSP server: LSP का समर्थन करने वाले किसी भी संपादक में समान सुविधा, परिभाषा पर जाएं, अनुवादित मान का पूर्वावलोकन देखें, और कुंजी पूर्णता प्राप्त करें।
i18next,react-i18next,next-intlऔरuse-intlकॉल का भी समर्थन करता है। - MCP server: Cursor, VS Code, Claude Desktop, Claude Code और ChatGPT के लिए Intlayer दस्तावेज़ और CLI प्रदान करता है।
- Agent skills: केंद्रित कौशल जैसे
intlayer-config,intlayer-cliऔरintlayer-content। - ESLint plugin:
no-raw-textनियम हार्डकोडेड स्ट्रिंग्स को चिह्नित करता है।
