घरसैंडबॉक्सशोकेसएप्पडॉकब्लॉग
    • Englishअंग्रेज़ी
      EN
    • русскийरूसी
      RU
    • 日本語जापानी
      JA
    • françaisफ़्रेंच
      FR
    • 한국어कोरियाई
      KO
    • 中文चीनी
      ZH
    • españolस्पेनिश
      ES
    • Deutschजर्मन
      DE
    • العربيةअरबी
      AR
    • italianoइतालवी
      IT
    • British Englishब्रिटिश अंग्रेज़ी
      EN-GB
    • portuguêsपुर्तगाली
      PT
    • हिन्दीहिन्दी
      HI
    • Türkçeतुर्की
      TR
    • polskiपोलिश
      PL
    • Indonesiaइंडोनेशियाई
      ID
    • Tiếng Việtवियतनामी
      VI
    • українськаयूक्रेनियाई
      UK
    /
    Alt+←
    अंतर्राष्ट्रीयकरण (i18n) क्या है?
    SEO और अंतर्राष्ट्रीयकरण
    मार्गदर्शिका
    • next-i18next के साथ i18n
    • next-intl के साथ i18n
    अपनी समाधान में Intlayer का उपयोग करें
    • next-i18next को स्वचालित करें
    • react-i18next को स्वचालित करें
    • next-intl को स्वचालित करें
    • react-intl को स्वचालित करें
    • vue-i18n को स्वचालित करें
    तुलना
    • next-i18next vs next-intl vs Intlayer
    • react-i18next vs react-intl vs Intlayer
    दस्तावेज़
    1. Blog
    2. I18n technologies
    3. Frameworks
    4. Svelte
    Creation:2025-01-16Last update:2025-06-29
    इस दस्तावेज़ को अपने पसंदीदा AI एसिस्टेंट के साथ संदर्भित करें
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    अपने प्रश्न को पूछें और दस्तावेज़ का सारांश प्राप्त करें, इस पृष्ठ और आपके चुने हुए AI प्रदाता का उपयोग करके

    इस पृष्ठ की सामग्री एक AI द्वारा अनुवादित की गई है।

    अंग्रेजी में मूल सामग्री के अंतिम संस्करण देखें
    इस दस्तावेज़ को संपादित करें

    अगर आपके पास इस दस्तावेज़ को सुधारने के लिए कोई विचार है, तो कृपया GitHub पर एक पुल अनुरोध सबमिट करके योगदान देने में संकोच न करें।

    दस्तावेज़ के लिए GitHub लिंक
    Copy

    दस्तावेज़ का Markdown को क्लिपबोर्ड पर कॉपी करें

    आपके Svelte वेबसाइट का अनुवाद करने के लिए i18n समाधानों का अन्वेषण करना

    जैसे-जैसे वेब दुनिया भर के लोगों को जोड़ता है, कई भाषाओं में सामग्री प्रदान करना越来越 महत्वपूर्ण होता जा रहा है। Svelte के साथ काम कर रहे डेवलपर्स के लिए, i18n लागू करना अनुवादों को प्रभावी ढंग से प्रबंधित करने, साफ कोड बनाए रखने और अच्छे SEO प्रथाओं को बनाए रखने के लिए आवश्यक है। इस लेख में, हम Svelte के लिए विभिन्न i18n समाधानों और कार्यप्रणालियों में गहराई से जाएंगे, जो आपकी परियोजना की आवश्यकताओं के लिए सबसे उपयुक्त है उसे चुनने में मदद कर रहा है।


    i18n illustration

    अंतरराष्ट्रीयकरण (i18n) क्या है?

    अंतरराष्ट्रीयकरण, जिसे सामान्यतः i18n के रूप में संक्षिप्त किया जाता है, आपकी एप्लिकेशन को इस तरह से डिजाइन और बनाना है कि यह विभिन्न भाषाओं, क्षेत्रों और सांस्कृतिक परंपराओं के लिए आसानी से अनुकूलित हो सके। Svelte में, इसका मतलब आमतौर पर अनुवाद स्ट्रिंग सेट करना, अंतिम तिथियों, समयों और संख्याओं को स्थानीय बनाना, और सुनिश्चित करना है कि उपयोगकर्ता इंटरफ़ेस विभिन्न स्थलों के बीच बिना प्रमुख कोड पुनर्लेखन के गतिशील रूप से बदल सके।

    i18n के मूल तत्वों के बारे में अधिक जानने के लिए, हमारा लेख पढ़ें: अंतरराष्ट्रीयकरण (i18n) क्या है? परिभाषा और चुनौतियाँ。


    Svelte ऐप्लिकेशनों के लिए अनुवाद चुनौती

    Svelte एप्लिकेशन का अनुवाद कई चुनौतियों का सामना कर सकता है:

    • एकल-फाइल घटक: Svelte का एकल-फाइल घटक दृष्टिकोण (जहां HTML, CSS, और JavaScript एक साथ होते हैं) के कारण पाठ बिखर जाता है, जिससे अनुवाद को केंद्रीकृत करने की आवश्यकता होती है।
    • गतिशील सामग्री: APIs या उपयोगकर्ता इनपुट से पुनर्प्राप्त डेटा में जटिलता जोड़ता है जब यह सुनिश्चित करने की बात आती है कि सामग्री तुरंत अनुवादित हो।
    • SEO पर विचार: यदि आप SvelteKit का उपयोग करके सर्वर-साइड रेंडरिंग (SSR) कर रहे हैं, तो प्रभावी SEO के लिए स्थानीय URL, मेटा टैग और साइटमैप कॉन्फ़िगर करने में अतिरिक्त सावधानी की आवश्यकता होती है।
    • राज्य और रूटिंग: कई रूट और गतिशील पृष्ठों में सही भाषा को बनाए रखना अक्सर SvelteKit में वैश्विक राज्य, रूट गार्ड या कस्टम हुकों का समन्वय करना शामिल होता है।
    • रखरखाव: जैसे-जैसे आपकी कोडबेस और अनुवाद फ़ाइलें बढ़ती हैं, सब कुछ सुव्यवस्थित और समन्वयित रखना एक निरंतर प्रयास बन जाता है।

    Svelte के लिए प्रमुख i18n समाधान

    Svelte एक स्वदेशी, अंतर्निहित i18n समाधान प्रदान नहीं करता (जैसा कि Angular करता है), लेकिन समुदाय ने मजबूत पुस्तकालयों और पैटर्नों की एक श्रृंखला बनाई है। नीचे कई लोकप्रिय दृष्टिकोण दिए गए हैं।

    1. Intlayer

    वेबसाइट: https://intlayer.org/

    सारांश
    Intlayer एक अभिनव, ओपन-सोर्स अंतर्राष्ट्रीयकरण (i18n) पुस्तकालय है जिसे आधुनिक Svelte (और अन्य) वेब एप्लिकेशनों में बहुभाषी समर्थन को सरल बनाने के लिए डिज़ाइन किया गया है। यह एक डिक्लरेटिव दृष्टिकोण प्रदान करता है, जिससे आप अपने घटकों के भीतर सीधे अनुवाद शब्दकोशों को परिभाषित कर सकते हैं।

    प्रमुख विशेषताएँ

    • अनुवाद घोषणा: सभी अनुवादों की एक ही फ़ाइल में घोषणा करने की अनुमति देता है, जो घटक स्तर पर रखी जाती है, इसे बनाए रखना और स्केल करना आसान बनाता है।
    • TypeScript और ऑटोकम्प्लीशन: अनुवाद कुंजी के लिए स्वतः उत्पन्न प्रकार की परिभाषाएँ प्रदान करता है, जिससे मजबूत ऑटोकम्प्लीशन और त्रुटि पहचान होती है।
    • सर्वर घटक और SSR: सर्वर-साइड रेंडरिंग (SSR) और सर्वर घटकों को ध्यान में रखते हुए बनाया गया है, जिससे स्थानीयकृत सामग्री को क्लाइंट और सर्वर दोनों पर कुशलता से प्रस्तुत किया जाता है।
    • SEO के लिए स्थानीयकृत मेटाडेटा और URL: खोज योग्यता और SEO में सुधार के लिए गतिशील स्थान-आधारित मार्गों, साइटमैप, और robots.txt प्रविष्टियों को आसानी से संभालें।
    • निर्बाध एकीकरण: SvelteKit और अन्य उपकरणों के साथ संगत, सेटअप को सरल बनाता है।
    • असिंक्रोनस लोडिंग: अनुवाद शब्दकोशों को डायनेमिक तरीके से लोड करें, प्रारंभिक बंडल आकार कम करें और प्रदर्शन में सुधार करें।

    विचार

    • समुदाय और पारिस्थितिकी: हालाँकि बढ़ रहा है, पारिस्थितिकी नया है, इसलिए सामुदायिक-चालित प्लगइन्स और टूलिंग अधिक स्थापित समाधानों की तुलना में अधिक सीमित हो सकती है।

    2. svelte-i18n

    Repository: https://github.com/kaisermann/svelte-i18n

    अवलोकन
    svelte-i18n Svelte एप्लिकेशनों में अंतरराष्ट्रीयकरण जोड़ने के लिए सबसे अधिक अपनाए जाने वाले लाइब्रेरी में से एक है। यह आपको रनटाइम पर गतिशील रूप से स्थानीयकरण करने और स्विच करने की अनुमति देता है और प्लूरल्स, इंटरपोलेशन, और अधिक के लिए सहायक विशेषताएँ शामिल करता है।

    मुख्य विशेषताएँ

    • रनटाइम अनुवाद: आवश्यकतानुसार अनुवाद फ़ाइलें लोड करें, जिससे आप अपने ऐप को पुनःनिर्माण किए बिना भाषाएँ स्विच कर सकें।
    • प्लूरलाइजेशन और इंटरपोलेशन: अनुवादों के भीतर वेरिएबल्स को सम्मिलित करने और प्लूरल रूपों को संभालने के लिए सीधा व्याकरण प्रदान करता है।
    • लेज़ी लोडिंग: केवल वही अनुवाद फ़ाइलें लाएं जिनकी आपको आवश्यकता है, बड़े ऐप्स या कई भाषाओं के लिए प्रदर्शन का अनुकूलन।
    • SvelteKit समर्थन: अच्छे SEO के लिए SvelteKit में SSR के साथ एकीकृत करने के लिए अच्छी तरह से प्रलेखित उदाहरण।

    विचार

    • परियोजना संगठन: जैसे ही परियोजना बढ़ती है, आपको अपनी अनुवाद फ़ाइलों को तार्किक रूप से संरचना करना होगा।
    • SSR सेटअप: SEO के लिए SSR कॉन्फ़िगर करने के लिए अतिरिक्त कदम की आवश्यकता हो सकती है, ताकि सर्वर पक्ष पर सही स्थानीयकरण का पता लगाया जा सके।
    • प्रदर्शन: जबकि रनटाइम पर लचीला, एक साथ लोड की गई अनुवादों की बड़ी मात्रा प्रारंभिक लोड समय को प्रभावित कर सकती है, लेज़ी लोडिंग या कैशिंग रणनीतियाँ अपनाने पर विचार करें।

    3. svelte-intl-precompile

    Repository: https://github.com/cibernox/svelte-intl-precompile

    अवलोकन
    svelte-intl-precompile रनटाइम ओवरहेड को कम करने और प्रदर्शन में सुधार के लिए एक प्री-कंपिलेशन दृष्टिकोण का उपयोग करता है। यह पुस्तकालय संदेश प्रारूपण के अवधारणा को एकीकृत करता है (जो FormatJS के समान है) और निर्माण के समय पूर्व-संरचना संदेश उत्पन्न करता है।

    मुख्य विशेषताएँ

    • प्री-कंपिलेड संदेश: निर्माण प्रक्रिया के दौरान अनुवाद स्ट्रिंग को संकलित करके, रनटाइम प्रदर्शन में सुधार होता है, और बंडल का आकार छोटा हो सकता है।
    • SvelteKit के साथ एकीकरण: SSR के साथ संगत, जिससे आप बेहतर SEO और उपयोगकर्ता अनुभव के लिए पूरी तरह से स्थानीयकृत पृष्ठ पेश कर सकते हैं।
    • संदेश निकालना: आपके कोड से स्ट्रिंग्स को स्वचालित रूप से निकालें, मैन्युअल अपडेट्स के ओवरहेड को कम करें।
    • उन्नत प्रारूपण: प्लूरलाइजेशन, लिंग-विशिष्ट अनुवादों, और वेरिएबल इंटरपोलेशन को समर्थन करता है।

    विचार

    • निर्माण जटिलता: प्रीकंपिलेशन सेटअप आपके निर्माण पाइपलाइन में अतिरिक्त जटिलता जोड़ सकता है।
    • गतिशील सामग्री: यदि आपको उपयोगकर्ता-जनित सामग्री के लिए तात्कालिक अनुवादों की आवश्यकता है, तो इस दृष्टिकोण में रनटाइम पर अपडेट के लिए अतिरिक्त कदम उठाने की आवश्यकता हो सकती है।
    • सीखने की अवस्था: संदेश निकालने और प्रीकंपिलेशन का संयोजन नए लोगों के लिए थोड़े अधिक जटिल हो सकता है।

    4. i18next with Svelte / SvelteKit

    Website: https://www.i18next.com/

    अवलोकन
    हालांकि i18next सामान्यतः React या Vue के साथ अधिक जुड़ा हुआ है, इसे Svelte या SvelteKit के साथ भी एकीकृत करना संभव है। यदि आपको अपनी संगठन में विभिन्न JavaScript ढाँचों के बीच सुसंगत i18n की आवश्यकता है, तो i18next के व्यापक पारिस्थितिकी तंत्र का लाभ उठाना सहायक हो सकता है।

    मुख्य विशेषताएँ

    • परिपक्व पारिस्थितिकी तंत्र: बहुत सारे प्लगइन्स, भाषा पहचान मॉड्यूल्स, और सामुदायिक समर्थन से लाभ उठाएँ।
    • रनटाइम या निर्माण समय: आपके अनुवादों को गतिशील रूप से लोड करने या बंडल करने के बीच चुनें, ताकि थोड़ा तेज़ी से शुरुआत हो सके।
    • SSR-फ्रेंडली: SvelteKit SSR स्थानीयकृत सामग्री को सर्वर पक्ष पर i18next का उपयोग करके पेश कर सकता है, जो SEO के लिए उत्कृष्ट है।
    • धनी विशेषताएँ: इंटरपोलेशन, प्लूरल्स, नेस्टेड अनुवादों और अधिक जटिल i18n परिदृश्यों का समर्थन करता है।

    विचार

    • मैनुअल सेटअप: i18next के पास बॉक्स से बाहर Svelte के लिए एक समर्पित एकीकरण नहीं है, इसलिए आपको इसे स्वयं कॉन्फ़िगर करना होगा।
    • ओवरहेड: i18next मजबूत है, लेकिन छोटे Svelte प्रोजेक्ट्स के लिए, इसकी कुछ विशेषताएँ अधिक हो सकती हैं।
    • रूटिंग और राज्य: भाषा रूटिंग का प्रबंधन करते समय संभवतः कस्टम SvelteKit हुक या मध्यवर्ती का उपयोग करना आवश्यक होगा।

    अंतिम विचार

    जब आप अपने Svelte ऐप के लिए i18n रणनीति का चयन करें:

    1. परियोजना के पैमाने का मूल्यांकन करें: छोटे प्रोजेक्ट्स या त्वरित प्रोटोटाइप के लिए, सरल लाइब्रेरी जैसे svelte-i18n या एक न्यूनतम i18n दृष्टिकोण पर्याप्त हो सकता है। बड़े, अधिक जटिल ऐप्स एक टाइप, प्री-कंपिल्ड, या अधिक मजबूत पारिस्थितिकी तंत्र आधारित समाधान से लाभ उठा सकते हैं।
    2. SSO और SSR पर विचार: यदि SEO महत्वपूर्ण है या आपको SvelteKit के साथ सर्वर-साइड रेंडरिंग की आवश्यकता है, तो ऐसी लाइब्रेरी चुनें जो SSR का प्रभावी ढंग से समर्थन करती हो और स्थानीयकृत रूट, मेटाडेटा और साइटमैप को संभाल सके।
    3. रनटाइम बनाम निर्माण समय: तय करें कि क्या आपको रनटाइम पर गतिशील भाषा स्विचिंग की आवश्यकता है या बेहतर प्रदर्शन के लिए प्री-कंपिल्ड अनुवाद पसंद करते हैं। प्रत्येक दृष्टिकोण में विभिन्न व्यापार-करार होते हैं।
    4. TypeScript एकीकरण: यदि आप TypeScript पर बहुत अधिक निर्भर करते हैं, तो Intlayer जैसी समाधान या टाइप किए गए कुंजियों के साथ पुस्तकालयों से रनटाइम त्रुटियों को महत्वपूर्ण रूप से कम किया जा सकता है और डेवलपर अनुभव में सुधार किया जा सकता है।
    5. रखरखाव और स्केलेबिलिटी: यह योजना बनाएं कि आप अपनी अनुवाद फ़ाइलों को कैसे व्यवस्थित, अपडेट और संस्करण करेंगे। स्वचालित निकासी, नामकरण कन्वेंशन, और एक सुसंगत फ़ोल्डर संरचना लंबे समय में समय की बचत करेगी।

    अंत में, प्रत्येक पुस्तकालय अद्वितीय ताकतें प्रदान करता है। आपका चयन प्रदर्शन, डेवलपर अनुभव, SEO की ज़रूरतें, और दीर्घकालिक रखरखाव पर निर्भर करता है। अपनी परियोजना के लक्ष्यों के साथ मेल खाने वाले एक समाधान का चयन करके, आप Svelte में एक वास्तविक वैश्विक अनुप्रयोग बना सकते हैं, जो दुनिया भर के उपयोगकर्ताओं को प्रसन्न करता है।

    अंतर्राष्ट्रीयकरण (i18n) क्या है?
    Alt+→

    इस पृष्ठ में

      चर्चाएं गुमनाम हैं और सामान्य मुद्दों को संबोधित करने के लिए नियमित रूप से समीक्षा की जाती हैं। फीचर आइडिया, डॉक्यूमेंटेशन पर फीडबैक, या Intlayer से संबंधित कुछ भी साझा करने में संकोच न करें, हम इस इनपुट का उपयोग अपने रोडमैप को आकार देने और उत्पाद को बेहतर बनाने के लिए करते हैं।