अपने प्रश्न को पूछें और दस्तावेज़ का सारांश प्राप्त करें, इस पृष्ठ और आपके चुने हुए AI प्रदाता का उपयोग करके
यह दस्तावेज़ पुराना है, आधार संस्करण को इस तिथि पर अपडेट किया गया है 4 अक्टूबर 2026.
अंग्रेजी दस्तावेज़ पर जाएँसंस्करण इतिहास
- "सॉलिड useIntlayer API उपयोग को सीधे प्रॉपर्टी एक्सेस में अपडेट करें"v8.9.04/5/2026
- "init कमांड जोड़ें"v7.5.930/12/2025
- "इतिहास प्रारंभ"v5.5.1029/6/2025
इस पृष्ठ की सामग्री एक AI द्वारा अनुवादित की गई है।
अंग्रेजी में मूल सामग्री के अंतिम संस्करण देखेंअगर आपके पास इस दस्तावेज़ को सुधारने के लिए कोई विचार है, तो कृपया GitHub पर एक पुल अनुरोध सबमिट करके योगदान देने में संकोच न करें।
दस्तावेज़ के लिए GitHub लिंकदस्तावेज़ का Markdown को क्लिपबोर्ड पर कॉपी करें
Intlayer के साथ अपना Express backend अनुवाद करें
express-intlayer Express अनुप्रयोगों के लिए एक शक्तिशाली अंतरराष्ट्रीयकरण (i18n) मिडलवेयर है, जिसे क्लाइंट की प्राथमिकताओं के आधार पर स्थानीयकृत प्रतिक्रियाएँ प्रदान करके आपके बैकएंड सेवाओं को वैश्विक रूप से सुलभ बनाने के लिए डिज़ाइन किया गया है।
व्यावहारिक उपयोग के मामले
उपयोगकर्ता की भाषा में बैकएंड त्रुटियाँ प्रदर्शित करना: जब कोई त्रुटि होती है, तो उपयोगकर्ता की मूल भाषा में संदेश प्रदर्शित करना समझ को बेहतर बनाता है और निराशा को कम करता है। यह विशेष रूप से गतिशील त्रुटि संदेशों के लिए उपयोगी है जो फ्रंट-एंड घटकों जैसे टोस्ट्स या मोडल्स में दिखाए जा सकते हैं।
- बहुभाषी सामग्री प्राप्त करना: डेटाबेस से सामग्री खींचने वाले अनुप्रयोगों के लिए, अंतरराष्ट्रीयकरण यह सुनिश्चित करता है कि आप इस सामग्री को कई भाषाओं में सेवा दे सकते हैं। यह ई-कॉमर्स साइटों या सामग्री प्रबंधन प्रणालियों जैसे प्लेटफार्मों के लिए महत्वपूर्ण है जिन्हें उत्पाद विवरण, लेख और अन्य सामग्री उपयोगकर्ता की पसंदीदा भाषा में प्रदर्शित करने की आवश्यकता होती है।
बहुभाषी ईमेल भेजना: चाहे वह लेन-देन ईमेल हों, विपणन अभियान हों, या सूचनाएँ हों, प्राप्तकर्ता की भाषा में ईमेल भेजने से जुड़ाव और प्रभावशीलता में काफी वृद्धि हो सकती है।
बहुभाषी ईमेल भेजना: चाहे वह लेनदेन संबंधी ईमेल हो, मार्केटिंग अभियान हो, या सूचनाएं हों, प्राप्तकर्ता की भाषा में ईमेल भेजने से engagement और effectiveness में काफी वृद्धि हो सकती है।
बहुभाषी पुश सूचनाएँ: मोबाइल अनुप्रयोगों के लिए, उपयोगकर्ता की पसंदीदा भाषा में पुश सूचनाएँ भेजने से बातचीत और प्रतिधारण में वृद्धि हो सकती है। यह व्यक्तिगत स्पर्श सूचनाओं को अधिक प्रासंगिक और कार्रवाई योग्य महसूस करा सकता है।
अन्य संचार: बैकएंड से किसी भी प्रकार के संचार, जैसे एसएमएस संदेश, सिस्टम अलर्ट, या उपयोगकर्ता इंटरफ़ेस अपडेट, उपयोगकर्ता की भाषा में होने से स्पष्टता सुनिश्चित होती है और समग्र उपयोगकर्ता अनुभव को बढ़ावा मिलता है। अपने बैकएंड का अंतरराष्ट्रीयकरण करके, आपकी एप्लिकेशन न केवल सांस्कृतिक मतभेदों का सम्मान करती है बल्कि वैश्विक बाजार की आवश्यकताओं के साथ बेहतर तालमेल भी बिठाती है, जिससे यह आपकी सेवाओं को विश्व स्तर पर बढ़ाने में एक प्रमुख कदम बन जाती है।
बैकएंड को अंतर्राष्ट्रीयकृत करके, आपका एप्लिकेशन न केवल सांस्कृतिक अंतरों का सम्मान करता है बल्कि वैश्विक बाजार की जरूरतों के साथ भी बेहतर तरीके से संरेखित होता है, जिससे यह विश्वव्यापी आपकी सेवाओं को स्केल करने के लिए एक महत्वपूर्ण कदम बन जाता है।
प्रारंभ करना
See Application Template on GitHub.
स्थापना
express-intlayer का उपयोग शुरू करने के लिए, npm का उपयोग करके पैकेज स्थापित करें:
कोड को क्लिपबोर्ड पर कॉपी करें
--interactiveध्वज (flag) वैकल्पिक है। यदि आप एक AI एजेंट हैं तोintlayer-cli initका उपयोग करें।
यह कमांड आपके एनवायरनमेंट को डिटेक्ट करेगी और आवश्यक पैकेज इंस्टॉल करेगी। उदाहरण के लिए:
कोड को क्लिपबोर्ड पर कॉपी करें
सेटअप
अपने प्रोजेक्ट रूट में intlayer.config.ts बनाकर अंतरराष्ट्रीयकरण सेटिंग्स को कॉन्फ़िगर करें:
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";
const config: IntlayerConfig = {
internationalization: {
locales: [
Locales.ENGLISH,
Locales.FRENCH,
Locales.SPANISH_MEXICO,
Locales.SPANISH_SPAIN,
],
defaultLocale: Locales.ENGLISH,
},
};
export default config;
अपनी सामग्री घोषित करें
अपने अनुवादों को संग्रहीत करने के लिए अपनी सामग्री घोषणाएँ बनाएं और प्रबंधित करें:
कोड को क्लिपबोर्ड पर कॉपी करें
import { t, type Dictionary } from "intlayer";
const indexContent = {
key: "index",
content: {
exampleOfContent: t({
en: "Example of returned content in English",
fr: "Exemple de contenu renvoyé en français",
"es-ES": "Ejemplo de contenido devuelto en español (España)",
"es-MX": "Ejemplo de contenido devuelto en español (México)",
}),
},
} satisfies Dictionary;
export default indexContent;
आपकी सामग्री घोषणाएँ आपके एप्लिकेशन में कहीं भी परिभाषित की जा सकती हैं जब तक कि वेcontentDirनिर्देशिका (डिफ़ॉल्ट रूप से,./src) में शामिल हों। और सामग्री घोषणा फ़ाइल एक्सटेंशन से मेल खाती हों (डिफ़ॉल्ट रूप से,.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml})।
अधिक विवरण के लिए, सामग्री घोषणा प्रलेखन देखें।
Express एप्लिकेशन सेटअप
अपने Express एप्लिकेशन को express-intlayer का उपयोग करने के लिए सेटअप करें:
कोड को क्लिपबोर्ड पर कॉपी करें
import express, { type Express } from "express";
import { intlayer, t, getDictionary, getIntlayer } from "express-intlayer";
import dictionaryExample from "./index.content";
const app: Express = express();
// अंतरराष्ट्रीयकरण अनुरोध हैंडलर लोड करें
app.use(intlayer());
// रूट्स
app.get("/t_example", (_req, res) => {
res.send(
t({
en: "Example of returned content in English",
fr: "Exemple de contenu renvoyé en français",
"es-ES": "Ejemplo de contenido devuelto en español (España)",
"es-MX": "Ejemplo de contenido devuelto en español (México)",
})
);
});
app.get("/getIntlayer_example", (_req, res) => {
res.send(getIntlayer("index").exampleOfContent);
});
app.get("/getDictionary_example", (_req, res) => {
res.send(getDictionary(dictionaryExample).exampleOfContent);
});
// सर्वर प्रारंभ करें
app.listen(3000, () => console.log(`Listening on port 3000`));
संगतता
express-intlayer पूरी तरह से संगत है:
react-intlayernext-intlayervite-intlayerयह किसी भी अंतर्राष्ट्रीयकरण समाधान के साथ विभिन्न वातावरणों में, जिसमें ब्राउज़र और API अनुरोध शामिल हैं, सहजता से काम करता है। आप मिडलवेयर को हेडर या कुकीज़ के माध्यम से लोकल का पता लगाने के लिए अनुकूलित कर सकते हैं:
यह किसी भी अंतरराष्ट्रीयकरण समाधान के साथ विभिन्न वातावरणों में, जिसमें ब्राउज़र और API अनुरोध शामिल हैं, सहजता से काम करता है। आप मिडलवेयर को हेडर या कुकी के माध्यम से लोकल का पता लगाने के लिए अनुकूलित कर सकते हैं:
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";
const config: IntlayerConfig = {
// ... अन्य कॉन्फ़िगरेशन विकल्प
routing: {
storage: [
{ type: "header", name: "my-locale-header" },
{ type: "cookie", name: "my-locale-cookie" },
],
},
};
export default config;
डिफ़ॉल्ट रूप से, express-intlayer क्लाइंट की पसंदीदा भाषा निर्धारित करने के लिए Accept-Language हेडर की व्याख्या करेगा।
कॉन्फ़िगरेशन और उन्नत विषयों पर अधिक जानकारी के लिए, हमारी डॉक्यूमेंटेशन देखें।
TypeScript कॉन्फ़िगर करें
express-intlayer अंतरराष्ट्रीयकरण प्रक्रिया को बेहतर बनाने के लिए TypeScript की मजबूत क्षमताओं का उपयोग करता है। TypeScript की स्थैतिक टाइपिंग सुनिश्चित करती है कि हर अनुवाद कुंजी का ध्यान रखा गया है, जिससे अनुवादों के गायब होने का जोखिम कम होता है और रखरखाव में सुधार होता है।


सुनिश्चित करें कि स्वचालित रूप से उत्पन्न प्रकार (डिफ़ॉल्ट रूप से ./types/intlayer.d.ts में) आपके tsconfig.json फ़ाइल में शामिल हैं।
कोड को क्लिपबोर्ड पर कॉपी करें
VS Code एक्सटेंशन
अपने Intlayer विकास अनुभव को बेहतर बनाने के लिए, आप आधिकारिक Intlayer VS Code एक्सटेंशन इंस्टॉल कर सकते हैं।
यह एक्सटेंशन प्रदान करता है:
- अनुवाद कुंजियों के लिए ऑटोकम्प्लीशन।
- गायब अनुवादों के लिए रीयल-टाइम त्रुटि पहचान।
- अनुवादित सामग्री के इनलाइन पूर्वावलोकन।
- अनुवादों को आसानी से बनाने और अपडेट करने के लिए त्वरित क्रियाएं।
एक्सटेंशन का उपयोग कैसे करें, इसके लिए देखें Intlayer VS Code एक्सटेंशन दस्तावेज़।
Git कॉन्फ़िगरेशन
यह अनुशंसित है कि Intlayer द्वारा उत्पन्न फ़ाइलों को अनदेखा किया जाए। इससे आप उन्हें अपने Git रिपॉजिटरी में कमिट करने से बच सकते हैं।
ऐसा करने के लिए, आप अपनी .gitignore फ़ाइल में निम्नलिखित निर्देश जोड़ सकते हैं:
कोड को क्लिपबोर्ड पर कॉपी करें
अक्सर पूछे जाने वाले प्रश्न
ऐतिहासिक विकल्प i18next-http-middleware के साथ i18next है, जो प्रति नेमस्पेस JSON कैटलॉग लोड करता है और अनुरोध पर लोकेल संग्रहीत करता है। विकल्प express-intlayer के माध्यम से Intlayer है, जो आपके फ्रंटएंड के साथ साझा की गई टाइप की गई फ़ाइलों में सामग्री घोषित करता है, प्रति अनुरोध लोकेल का समाधान करता है, और AI अनुवाद और CMS जोड़ता है।
बैकएंड को अंतरराष्ट्रीयकृत करने का मुख्य कारण यह है कि उपयोगकर्ता द्वारा पढ़े जाने वाले टेक्स्ट का एक बड़ा हिस्सा कभी भी फ्रंटएंड से होकर नहीं गुजरता है: API त्रुटि संदेश, ट्रांजेक्शनल ईमेल, पुश नोटिफिकेशन, SMS और PDF निर्यात। इन्हें प्राप्तकर्ता की भाषा की आवश्यकता होती है, जो प्रति सत्र के बजाय प्रति अनुरोध हल की जाती है।
Intlayer क्यों चुनें देखें।
बहुत कम। शब्दकोश पहले से (ahead of time) संकलित होते हैं और केवल वही लोकेल शामिल किए जाते हैं जिन्हें आप घोषित करते हैं, इसलिए बूट पर कोई कैटलॉग लोडिंग नहीं होती और अनुरोध पथ पर कोई फ़ाइल रीड नहीं होता। यह सर्वरलेस और एज डिप्लॉयमेंट पर सबसे अधिक मायने रखता है, जहाँ बंडल का आकार कोल्ड स्टार्ट समय तय करता है। बंडल अनुकूलन देखें।
हाँ, और इसके दो रास्ते हैं। आप i18next माइग्रेशन गाइड के साथ सामग्री को धीरे-धीरे माइग्रेट कर सकते हैं। या आप अपना मौजूदा API पूरी तरह रख सकते हैं: compat adapters बिल्कुल i18next जैसा ही API प्रदान करते हैं, लेकिन Intlayer शब्दकोशों द्वारा परोसा जाता है, इसलिए केवल imports बदलते हैं और हैंडलर कोड नहीं बदलता।
हाँ। 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 स्रोत से शब्दकोश उत्पन्न करता है, ताकि ऐप के दोनों हिस्से बिना किसी हाथ से बनाए गए key के एक ही content layer साझा करें।
पाँच उपकरण, सभी वैकल्पिक:
- VS Code extension: किसी
useIntlayerkey से उसे घोषित करने वाली content फ़ाइल पर जाएं, किसी component से content निकालें, और कमांड पैलेट या एक समर्पित Intlayer टैब से build, fill, test, push और pull चलाएं। - LSP server: LSP का समर्थन करने वाले किसी भी संपादक में वही समझ, जिसमें go to definition, find all references, अनुवादित मान का hover पूर्वावलोकन, keys और fields की ऑटो-कम्प्लीशन, और कोई key कहीं घोषित न होने पर चेतावनी शामिल है। यह
i18next,react-i18next,next-intlऔरuse-intlकॉल्स को भी हल करता है, जो माइग्रेशन के दौरान मदद करता है। - MCP server: Cursor, VS Code, Claude Desktop, Claude Code और ChatGPT को Intlayer दस्तावेज़ और CLI उपलब्ध कराता है, ताकि असिस्टेंट अनुमान लगाने के बजाय वर्तमान दस्तावेज़ों से उत्तर दे और
intlayer fillजैसी कमांड स्वयं चला सके। - Agent skills:
intlayer-config,intlayer-cliऔरintlayer-contentजैसी केंद्रित skills, साथ ही हर फ़्रेमवर्क के लिए एक, जो एजेंट को आपका रूटिंग सेटअप और content node प्रकार सिखाती हैं। - ESLint plugin:
no-raw-textहार्डकोडेड स्ट्रिंग्स को चिह्नित करता है, साथ ही स्थिर dictionary keys और अप्रयुक्त content के लिए अतिरिक्त नियम भी हैं।
