अपने प्रश्न को पूछें और दस्तावेज़ का सारांश प्राप्त करें, इस पृष्ठ और आपके चुने हुए AI प्रदाता का उपयोग करके
संस्करण इतिहास
- "सॉलिड useIntlayer API उपयोग को सीधे प्रॉपर्टी एक्सेस में अपडेट करें"v8.9.04/5/2026
- "init कमांड जोड़ें"v7.5.930/12/2025
- "validatePrefix पेश करें और चरण 14 जोड़ें: स्थानीयकृत रूट्स के साथ 404 पेज हैंडल करना।"v7.4.011/12/2025
- "चरण 13 जोड़ें: अपने सर्वर एक्शन्स में लोकेल प्राप्त करें (वैकल्पिक)"v7.3.95/12/2025
- "चरण 13 जोड़ें: Nitro को अनुकूलित करें"v7.2.318/11/2025
- "getPrefix फ़ंक्शन जोड़कर उपसर्ग डिफ़ॉल्ट को ठीक करें useLocalizedNavigate, LocaleSwitcher और LocalizedLink का उपयोग करें।"v7.1.017/11/2025
- "दस्तावेज़ अपडेट करें"v6.5.23/10/2025
- "TanStack Start के लिए जोड़ा गया"v5.8.19/9/2025
इस पृष्ठ की सामग्री एक AI द्वारा अनुवादित की गई है।
अंग्रेजी में मूल सामग्री के अंतिम संस्करण देखेंअगर आपके पास इस दस्तावेज़ को सुधारने के लिए कोई विचार है, तो कृपया GitHub पर एक पुल अनुरोध सबमिट करके योगदान देने में संकोच न करें।
दस्तावेज़ के लिए GitHub लिंकदस्तावेज़ का Markdown को क्लिपबोर्ड पर कॉपी करें
Intlayer का उपयोग करके अपनी TanStack Start वेबसाइट का अनुवाद करें | अंतर्राष्ट्रीयकरण (i18n)
विषय-सूची
यह गाइड दिखाता है कि लोकेल-जागरूक रूटिंग, TypeScript समर्थन और आधुनिक विकास प्रथाओं के साथ TanStack Start प्रोजेक्ट्स में निर्बाध अंतर्राष्ट्रीयकरण के लिए Intlayer को कैसे एकीकृत किया जाए।
विकल्पों पर इन्टलेयर क्यों?
react-i18next या use-intl, या paraglide जैसे मुख्य समाधानों की तुलना में, Intlayer एक समाधान है जो एकीकृत अनुकूलन के साथ आता है जैसे:
पूर्ण टैनस्टैक प्रारंभ कवरेज
इंटलेयर टैनस्टैक स्टार्ट के लिए पूरी तरह से अनुकूलित है, जो बहुभाषी रूटिंग, कुकी प्रबंधन, साइटमैप जेनरेशन, डायनामिक कंटेंट लोडिंग और आपके अंतर्राष्ट्रीयकरण (i18n) प्रयासों को बढ़ाने के लिए आवश्यक सभी सुविधाएँ प्रदान करता है।
बंडल का आकार
अपने पृष्ठों में विशाल JSON फ़ाइलें लोड करने के बजाय, केवल आवश्यक सामग्री लोड करें। इंटलेयर आपके बंडल और पृष्ठ आकार को 50% तक कम करने में मदद करता है।
रखरखाव
आपके एप्लिकेशन की सामग्री का दायरा बड़े पैमाने के अनुप्रयोगों के लिए रखरखाव की सुविधा प्रदान करता है। आप अपने संपूर्ण सामग्री कोडबेस की समीक्षा करने के मानसिक बोझ के बिना किसी एक फीचर फ़ोल्डर की नकल कर सकते हैं या उसे हटा सकते हैं। इसके अतिरिक्त, आपकी सामग्री की सटीकता सुनिश्चित करने के लिए Intlayer पूरी तरह से टाइप किया गया है।
एआई एजेंट
सामग्री का सह-स्थानीकरण बड़े भाषा मॉडल (एलएलएम) द्वारा आवश्यक संदर्भ को कम करता है। इंटलेयर टूल के एक सूट के साथ भी आता है, जैसे CLI ताकि लापता अनुवादों का परीक्षण किया जा सके,LSP, MCP, और एजेंट कौशल, AI एजेंटों के लिए डेवलपर अनुभव (DX) को और भी आसान बनाने के लिए।
स्वचालन
अपने एआई प्रदाता की कीमत पर अपनी पसंद के एलएलएम का उपयोग करके अपने सीआई/सीडी पाइपलाइन में अनुवाद करने के लिए स्वचालन का उपयोग करें। इंटलेयर सामग्री निष्कर्षण को स्वचालित करने के लिए एक कंपाइलर के साथ-साथ पृष्ठभूमि में अनुवाद में मदद करने के लिए एक वेब प्लेटफ़ॉर्म भी प्रदान करता है।
प्रदर्शन
बड़े पैमाने पर JSON फ़ाइलों को घटकों से जोड़ने से प्रदर्शन और प्रतिक्रियाशीलता संबंधी समस्याएं हो सकती हैं। इंटलेयर बिल्ड समय पर आपकी सामग्री लोडिंग को अनुकूलित करता है।
किसी भी देव के साथ स्केलिंग
सिर्फ एक i18n समाधान से अधिक, Intlayer एक स्व-होस्टेड विज़ुअल एडिटर और एक [पूर्ण] प्रदान करता है सीएमएस](/hi/doc/concept/cms) आपकी बहुभाषी सामग्री को वास्तविक समय में प्रबंधित करने में मदद करता है, जिससे अनुवादकों, कॉपीराइटरों और टीम के अन्य सदस्यों के साथ सहयोग सहज हो जाता है। सामग्री को स्थानीय और/या दूरस्थ रूप से संग्रहीत किया जा सकता है।
TanStack Start एप्लिकेशन में Intlayer सेट अप करने के लिए चरण-दर-चरण मार्गदर्शिका
GitHub पर एप्लिकेशन टेम्पलेट देखें।
प्रोजेक्ट बनाएं
TanStack Start वेबसाइट पर नया प्रोजेक्ट शुरू करें गाइड का पालन करके एक नया TanStack Start प्रोजेक्ट बनाना शुरू करें।
Intlayer पैकेज इंस्टॉल करें
अपने पसंदीदा पैकेज मैनेजर का उपयोग करके आवश्यक पैकेज इंस्टॉल करें:
bashकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
intlayer
कोर पैकेज जो कॉन्फ़िगरेशन प्रबंधन, अनुवाद, सामग्री घोषणा, ट्रांसपाइलेशन और CLI कमांड के लिए अंतर्राष्ट्रीयकरण उपकरण प्रदान करता है।
react-intlayer वह पैकेज जो Intlayer को React एप्लिकेशन के साथ एकीकृत करता है। यह React अंतर्राष्ट्रीयकरण के लिए संदर्भ प्रदाता और हुक प्रदान करता है।
vite-intlayer इसमें Intlayer को Vite बंडलर के साथ एकीकृत करने के लिए Vite प्लगइन, साथ ही उपयोगकर्ता की पसंदीदा लोकेल का पता लगाने, कुकीज़ प्रबंधित करने और URL पुनर्निर्देशन को संभालने के लिए मिडलवेयर शामिल है।
अपने प्रोजेक्ट का कॉन्फ़िगरेशन
अपनी एप्लिकेशन की भाषाओं को कॉन्फ़िगर करने के लिए एक कॉन्फ़िग फ़ाइल बनाएं:
intlayer.config.tsकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
इस कॉन्फ़िगरेशन फ़ाइल के माध्यम से, आप स्थानीयकृत URL, मिडलवेयर पुनर्निर्देशन, कुकी नाम, अपनी सामग्री घोषणाओं का स्थान और विस्तार सेट कर सकते हैं, कंसोल में Intlayer लॉग को अक्षम कर सकते हैं, और बहुत कुछ। उपलब्ध पैरामीटर की पूरी सूची के लिए, कॉन्फ़िगरेशन दस्तावेज़ देखें।
अपने Vite कॉन्फ़िगरेशन में Intlayer को एकीकृत करें
अपने कॉन्फ़िगरेशन में intlayer प्लगइन जोड़ें:
vite.config.tsकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
intlayer()Vite प्लगइन का उपयोग Intlayer को Vite के साथ एकीकृत करने के लिए किया जाता है। यह सामग्री घोषणा फ़ाइलों के निर्माण को सुनिश्चित करता है और विकास मोड में उनकी निगरानी करता है। यह Vite एप्लिकेशन के भीतर Intlayer पर्यावरण चर को परिभाषित करता है। इसके अतिरिक्त, यह प्रदर्शन को अनुकूलित करने के लिए उपनाम प्रदान करता है।रूट लेआउट बनाएं
वर्तमान लोकेल का पता लगाने के लिए
useParamsका उपयोग करके औरhtmlटैग परlangऔरdirविशेषताओं को सेट करके अंतर्राष्ट्रीयकरण का समर्थन करने के लिए अपने रूट लेआउट को कॉन्फ़िगर करें।src/routes/__root.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
यदि आप अपनी सामग्री को
stringएट्रिब्यूट में उपयोग करना चाहते हैं, जैसेalt,title,href,aria-label, आदि, तो आपको फ़ंक्शन के मान को कॉल करना होगा, जैसे:htmlकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
लोकेल लेआउट बनाएं
एक लेआउट बनाएं जो लोकेल उपसर्ग को संभालता है और सत्यापन करता है।
src/routes/{-$locale}/route.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
यहाँ,
{-$locale}एक गतिशील रूट पैरामीटर है जो वर्तमान लोकेल से बदल दिया जाता है। यह नोटेशन स्लॉट को वैकल्पिक बनाता है, जिससे यह'prefix-no-default'आदि जैसे रूटिंग मोड के साथ काम करने की अनुमति देता है।ध्यान रखें कि यदि आप एक ही रूट में कई गतिशील खंडों का उपयोग करते हैं (जैसे,
/{-$locale}/other-path/$anotherDynamicPath/...), तो यह स्लॉट समस्याएँ पैदा कर सकता है।'prefix-all'मोड के लिए, आप इसके बजाय स्लॉट को$localeमें बदलना पसंद कर सकते हैं।'no-prefix'या'search-params'मोड के लिए, आप स्लॉट को पूरी तरह से हटा सकते हैं।अपनी सामग्री घोषित करें
अनुवादों को संग्रहीत करने के लिए अपनी सामग्री घोषणाएं बनाएं और प्रबंधित करें:
src/contents/page.content.tsकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
आपकी सामग्री घोषणाएं आपके एप्लिकेशन में कहीं भी परिभाषित की जा सकती हैं जैसे ही वे
contentDirनिर्देशिका (डिफ़ॉल्ट रूप से,./app) में शामिल होती हैं। और सामग्री घोषणा फ़ाइल विस्तार (डिफ़ॉल्ट रूप से,.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}) से मेल खाती हैं।अधिक विवरण के लिए, सामग्री घोषणा दस्तावेज़ देखें।
लोकेल-जागरूक घटक और हुक बनाएं
लोकेल-जागरूक नेविगेशन के लिए एक
LocalizedLinkघटक बनाएं:src/components/localized-link.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
इस घटक के दो उद्देश्य हैं:
- URL से अनावश्यक
{-$locale}उपसर्ग को हटाना। - URL में लोकेल पैरामीटर इंजेक्ट करना ताकि यह सुनिश्चित हो सके कि उपयोगकर्ता सीधे स्थानीयकृत रूट पर निर्देशित हो।
फिर हम प्रोग्रामेटिक नेविगेशन के लिए एक
useLocalizedNavigateहुक बना सकते हैं:src/hooks/useLocalizedNavigate.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
- URL से अनावश्यक
अपने पृष्ठों में Intlayer का उपयोग करें
अपने एप्लिकेशन में अपने सामग्री शब्दकोशों तक पहुंचें:
स्थानीयकृत होम पेज
src/routes/{-$locale}/index.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
useIntlayerहुक के बारे में अधिक जानने के लिए, दस्तावेज़ीकरण देखें।एक लोकेल स्विचर घटक बनाएं
उपयोगकर्ताओं को भाषाएं बदलने की अनुमति देने के लिए एक घटक बनाएं:
src/components/locale-switcher.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
useLocaleहुक के बारे में अधिक जानने के लिए, दस्तावेज़ीकरण देखें।HTML विशेषताओं का प्रबंधन
जैसा कि चरण 5 में देखा गया है, आप अपने रूट घटक में
useParamsका उपयोग करकेhtmlटैग कीlangऔरdirविशेषताओं को प्रबंधित कर सकते हैं। यह सुनिश्चित करता है कि सर्वर और क्लाइंट पर सही विशेषताएं सेट की गई हैं।src/routes/__root.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
मिडलवेयर जोड़ें
आप अपने एप्लिकेशन में सर्वर-साइड रूटिंग जोड़ने के लिए
intlayerProxyका भी उपयोग कर सकते हैं। यह प्लगइन URL के आधार पर वर्तमान लोकेल का स्वचालित रूप से पता लगाएगा और उपयुक्त लोकेल कुकी सेट करेगा। यदि कोई लोकेल निर्दिष्ट नहीं है, तो प्लगइन उपयोगकर्ता के ब्राउज़र भाषा प्राथमिकताओं के आधार पर सबसे उपयुक्त लोकेल निर्धारित करेगा। यदि कोई लोकेल नहीं मिलता है, तो यह डिफ़ॉल्ट लोकेल पर पुनर्निर्देशित करेगा।ध्यान दें कि उत्पादन में
intlayerProxyका उपयोग करने के लिए, आपकोvite-intlayerपैकेज कोdevDependenciesसेdependenciesमें स्विच करने की आवश्यकता है।vite.config.tsकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
अपने मेटाडेटा को अंतर्राष्ट्रीयकृत करें
आप अपने एप्लिकेशन में अपने सामग्री शब्दकोशों तक पहुंचने के लिए
getIntlayerहुक का भी उपयोग कर सकते हैं:src/routes/{-$locale}/index.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
अपने सर्वर एक्शन्स में लोकेल प्राप्त करें
आप अपने सर्वर एक्शन्स या API एंडपॉइंट के अंदर से वर्तमान लोकेल तक पहुंचना चाह सकते हैं। आप इसे
intlayerसेgetLocaleहेल्पर का उपयोग करके कर सकते हैं।यहाँ TanStack Start के सर्वर फ़ंक्शंस का उपयोग करने वाला एक उदाहरण है:
src/routes/{-$locale}/index.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
नहीं मिले पृष्ठों का प्रबंधन करें
जब कोई उपयोगकर्ता गैर-मौजूद पृष्ठ पर जाता है, तो आप एक कस्टम नहीं मिला पृष्ठ प्रदर्शित कर सकते हैं और लोकेल उपसर्ग नहीं मिला पृष्ठ के ट्रिगर होने के तरीके को प्रभावित कर सकता है।
लोकेल उपसर्गों के साथ TanStack Router के 404 हैंडलिंग को समझना
TanStack Router में, स्थानीयकृत रूट्स के साथ 404 पृष्ठों को संभालने के लिए एक बहु-स्तरीय दृष्टिकोण की आवश्यकता होती है:
- समर्पित 404 रूट: 404 UI प्रदर्शित करने के लिए एक विशिष्ट रूट
- रूट-स्तरीय सत्यापन: लोकेल उपसर्गों को मान्य करता है और अमान्य को 404 पर पुनर्निर्देशित करता है
- कैच-ऑल रूट: लोकेल खंड के भीतर किसी भी बेमेल पथ को कैप्चर करता है
src/routes/{-$locale}/404.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
src/routes/{-$locale}/route.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
src/routes/{-$locale}/$.tsxकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
TypeScript कॉन्फ़िगर करें
Intlayer TypeScript के लाभ प्राप्त करने और आपके कोडबेस को मजबूत बनाने के लिए मॉड्यूल ऑगमेंटेशन का उपयोग करता है।
सुनिश्चित करें कि आपके TypeScript कॉन्फ़िगरेशन में स्वचालित रूप से उत्पन्न प्रकार शामिल हैं:
tsconfig.jsonकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
अपने घटकों की सामग्री निकालें
वैकल्पिकयदि आपके पास मौजूदा कोडबेस है, तो हजारों फ़ाइलों को बदलना समय लेने वाला हो सकता है।
इस प्रक्रिया को आसान बनाने के लिए, Intlayer आपके घटकों को बदलने और सामग्री निकालने के लिए एक कंपाइलर / एक्सट्रैक्टर का प्रस्ताव करता है।
इसे सेट करने के लिए, आप अपनी
intlayer.config.tsफ़ाइल में एकcompilerअनुभाग जोड़ सकते हैं:intlayer.config.tsकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
import { type IntlayerConfig } from "intlayer"; const config: IntlayerConfig = { // ... आपका शेष कॉन्फ़िगरेशन compiler: { /** * इंगित करता है कि क्या कंपाइलर सक्षम होना चाहिए। */ enabled: true, /** * आउटपुट फ़ाइलों का पथ परिभाषित करता है */ output: ({ fileName, extension }) => `./${fileName}${extension}`, /** * इंगित करता है कि क्या घटकों को बदलने के बाद सहेजा जाना चाहिए। उस तरह से, कंपाइलर को ऐप बदलने के लिए केवल एक बार चलाया जा सकता है, और फिर इसे हटाया जा सकता है। */ saveComponents: false, /** * शब्दकोश कुंजी उपसर्ग */ dictionaryKeyPrefix: "", }, }; export default config;अपने घटकों को बदलने और सामग्री निकालने के लिए एक्सट्रैक्टर चलाएँ
bashकोड कॉपी करेंकोड को क्लिपबोर्ड पर कॉपी करें
Git कॉन्फ़िगरेशन
Intlayer द्वारा उत्पन्न फ़ाइलों को अनदेखा करने की सिफारिश की जाती है। यह आपको उन्हें अपने Git रिपॉजिटरी में कमिट करने से बचने की अनुमति देता है।
ऐसा करने के लिए, आप अपनी .gitignore फ़ाइल में निम्नलिखित निर्देश जोड़ सकते हैं:
कोड को क्लिपबोर्ड पर कॉपी करें
VS Code एक्सटेंशन
Intlayer के साथ अपने विकास के अनुभव को बेहतर बनाने के लिए, आप आधिकारिक Intlayer VS Code एक्सटेंशन इंस्टॉल कर सकते हैं।
VS Code Marketplace से इंस्टॉल करें
यह एक्सटेंशन प्रदान करता है:
- अनुवाद कुंजियों के लिए ऑटोकम्प्लीशन।
- गुम अनुवादों के लिए रीयल-टाइम त्रुटि पहचान।
- अनुवादित सामग्री के इनलाइन पूर्वावलोकन।
- आसानी से अनुवाद बनाने और अपडेट करने के लिए त्वरित क्रियाएं।
एक्सटेंशन का उपयोग करने के तरीके के बारे में अधिक विवरण के लिए, Intlayer VS Code एक्सटेंशन दस्तावेज़ देखें।
आगे बढ़ें
आगे बढ़ने के लिए, आप विज़ुअल एडिटर को लागू कर सकते हैं या CMS का उपयोग करके अपनी सामग्री को बाहरी रूप दे सकते हैं।