दर्द रहित i18n, आपके अपने क्षितिज तक विस्तारित हजारों डॉलर खर्च किए बिना।
पूरी तरह से मुफ्त। असीमित परियोजनाएं, सभी 48 भाषाएं, कोई समाप्ति नहीं, लाइसेंस कुंजी की आवश्यकता नहीं।
असीमित परियोजनाएँ। सभी 48 भाषाएँ। कोई समाप्ति नहीं।
- सभी 48 भाषाएँ, असीमित अनुवाद
- डैशबोर्ड, MCP सर्वर, हर SDK
- खरीदने के लिए कुछ नहीं, आपकी AI कुंजी के अलावा दर्ज करने के लिए कुछ नहीं
i18n अब आसान है, आप इसका अनुभव कर सकते हैं। मुझे इससे टिप मिलने में कोई आपत्ति नहीं है।
- जब तुम इसे महसूस करते हो
- अगर तुम्हें मन करे
- 1 से लेकर 1 मिलियन डॉलर तक, और नहीं
Stripe द्वारा सुरक्षित भुगतान। एक लाइसेंस कुंजी आपके इनबॉक्स में पहुंचती है — यह डैशबोर्ड में दान संकेत को शांत करती है।
जो तुम प्राप्त करते हो
- असीमित परियोजनाएं, सभी 48 भाषाएं, कोई समाप्ति नहीं
- असीमित अनुवाद, उपयोग की कोई सीमा नहीं
- डैशबोर्ड, आपके एजेंटों के लिए एमसीपी सर्वर, हर एक एसडीके
- एक कंटेनर, बैकअप के लिए एक SQLite फ़ाइल
- ऑफलाइन जांचा गया लाइसेंस: आपका सर्वर कभी घर नहीं बुलाता
- प्रत्येक अपडेट, जीवन के लिए: डॉकर कम्पोज़ पुल
जो तुम लाते हो
- Docker के साथ एक मशीन: 4 यूरो का VPS पर्याप्त है
- एक AI API कुंजी (Mistral, OpenAI, Anthropic, Google या कोई भी OpenAI-संगत प्रदाता)। अनुवाद आपके अपने खाते पर चलते हैं, प्रति ऐप कुछ सेंट के लिए
- पांच मिनट
समर्थन ईमेल द्वारा, सर्वोत्तम प्रयास के साथ। किसी को कॉल पर चाहिए? होस्टेड प्लान आपके लिए हैं।
यह कैसे चलता है
इंस्टॉल करें, एडमिन बनाएं, अपनी AI कुंजी पेस्ट करें। हर प्रोजेक्ट मुफ्त है, हमेशा के लिए।
ONCE के साथ — एक नया सर्वर, एक डोमेन, पांच मिनट
curl -fsSL https://get.once.com | sh once # add an app: ghcr.io/ambroselli-io/i18n-keyless:latest, pick a host name # then open it: create the admin, paste your AI key on Settings # fully free, unlimited projects — donate if you want # ONCE does the domain, the TLS, the updates and the backups
Docker Compose के साथ — कोई भी मशीन जो Docker चलाती है
mkdir i18n-keyless && cd i18n-keyless curl -fsSL https://i18n-keyless.com/self-hosted/docker-compose.yml -o docker-compose.yml docker compose up -d # → http://localhost:1800: create the admin, paste your AI key on Settings # fully free, unlimited projects — donate if you want
फिर अपने SDK को अपने सर्वर पर इंगित करें:
I18nKeyless.init({
API_KEY: "your-project-key",
API_URL: "https://i18n.example.com",
// …
});पूर्ण मार्गदर्शिका: https://docs.i18n-keyless.com/docs/guides/self-hosting
दान क्यों?
क्योंकि आप स्वयं VPS और AI API कुंजी को संभालते हैं। आपसे सदस्यता के लिए शुल्क लेने का कोई कारण नहीं है। मुझे स्वयं सदस्यताएँ पसंद नहीं हैं। इसलिए इसके बजाय: आप तय करें कि सॉफ्टवेयर आपके लिए क्या मूल्य रखता है, और मैं इसे बनाता रहता हूँ।
छवि मुफ्त में इंस्टॉल होती है और असीमित परियोजनाएं चलाती है, हर भाषा के साथ और कोई समाप्ति नहीं।
खरीदने से पहले प्रश्न? हमें लिखें
सेटअप i18n, अपना कोडबेस साफ रखें और तेज़ी से शिप करें
वर्तमान i18n समाधानों के साथ कई PITA (समस्याएं) हैं। दर्द इतने बड़े हैं कि आप जितना संभव हो सके i18n में देरी करते हैं।
यह समय खर्च करता है जिसे आपको समुद्र तट पर बिताना चाहिए
सिस्टम की स्थापना करें: वरिष्ठ डेवलपर का कम से कम 1 घंटे का समय
प्रत्येक नई कुंजी के लिए आगे और पीछे: प्रति कुंजी 1 मिनट, x500 कुंजियाँ, x2 भाषाएँ = 17 घंटे
i18n-keyless के साथ, आपको i18n प्रणाली की बिल्कुल भी चिंता नहीं करनी पड़ती। आप समुद्र तट पर जा सकते हैं और एक मोहीतो ऑर्डर कर सकते हैं।
आज अधिकांश सिस्टम पाठ का अनुवाद करने के लिए कुंजियों का उपयोग करते हैं
इसको उत्पन्न करना दर्दनाक है। इसे बनाए रखना दर्दनाक है।
जब आप ऐप में कोई टेक्स्ट देखते हैं, और आप उसे अपडेट करना चाहते हैं, तो आपको संबंधित कुंजी ढूंढनी होगी।
i18n-keyless के साथ, आपको i18n प्रणाली की बिल्कुल भी चिंता नहीं करनी है। अपने दिमाग का उपयोग कुछ और दिलचस्प करने में करें।
अनुवाद AI को सौंपें
कुंजी प्रणाली के साथ, आपको ऐप में अनुवादों का प्रबंधन करना होगा।
अन्यथा आपके उपयोगकर्ताओं को उनकी ऐप में someheader.welcome.title दिखाई देगा।
i18n-keyless के साथ, सबसे खराब ऑफलाइन परिदृश्य में आप अनुवादित वास्तविक शब्द देखते हैं। सामान्य गति से, आपको i18n प्रणाली की बिल्कुल परवाह नहीं होती। बस अच्छी हेडलाइन लिखें, मार्केटिंग पर ध्यान केंद्रित करें और बिक्री प्राप्त करें।
कोडबेस सुंदर होते हैं... जब तक i18n कुंजियाँ संक्रमित नहीं हो जातीं
की सिस्टम के साथ, जब आप कोड और सामग्री पढ़ते हैं, तो आपको कुंजियाँ पढ़नी होती हैं, न कि प्राकृतिक भाषा।
कभी-कभी आपको एक फिक्स करना चाहिए क्योंकि एक वाक्य व्याकरणिक रूप से सही नहीं है। लेकिन आप यह नहीं जानते क्योंकि आप कुंजियाँ पढ़ते हैं।
i18n-keyless के साथ, आपको i18n सिस्टम की बिल्कुल भी परवाह नहीं करनी पड़ती। कोडबेस सुंदर रहता है।
आपकी i18n आवश्यकताओं को पूरा करने के लिए MCP सर्वर
एजेंटिक कोडिंग के लिए सिस्टम इतना अनुकूलित क्यों है, इसके छह अन्य कारण।
कोई नाम बनाने के लिए नहीं
एक कुंजी एक नामकरण निर्णय है जिसमें कोई सही उत्तर नहीं है। दो एजेंट उसी बटन के लिए login.submit और auth.button.send लिखते हैं। कुंजियों के बिना कोई निर्णय लेने के लिए नहीं है।
एक फ़ाइल संपादित करने के लिए, बीस नहीं
एक कुंजी-आधारित परिवर्तन घटक और हर स्थानीय JSON फ़ाइल को प्रभावित करता है, और एजेंट फ़ाइलें भूल जाते हैं। यहां, एक प्रतिलिपि परिवर्तन एकल-फ़ाइल संपादन है।
एजेंट बेड़ों में शून्य विलय संघर्ष
पांच शाखाओं पर पांच एजेंट सभी en.json संपादित कर रहे हैं: एक गारंटीकृत संघर्ष। कोई साझा फ़ाइल नहीं है, इसलिए वर्कट्रीज़ और पृष्ठभूमि एजेंट कभी नहीं टकराते हैं।
टोकन में सस्ता
किसी कुंजी का पुनः उपयोग करने के लिए, एक एजेंट को हर संपादन पर लोकल फ़ाइलें संदर्भ में लोड करनी होगी। बिना कुंजी के लोड कुछ नहीं करता: पाठ सीधे घटक में मौजूद है।
पठनीय अंतर
पुल अनुरोध वास्तविक वाक्य दिखाता है। एक मानव या समीक्षा एजेंट कुंजी क्या दर्शाती है यह खोदे बिना ही प्रतिलिपि का न्याय कर सकता है।
आपके CLAUDE.md में एक नियम
आप जो भी i18n नियम लिखते हैं, वह एक नियम है जिसे एजेंट तोड़ सकता है। इस नियम को केवल एक पंक्ति की आवश्यकता है — और फॉलबैक वास्तविक पाठ है, इसलिए कोई गलती स्क्रीन पर a.b.c नहीं दिखा सकती।
आपके एजेंट को चाहिए एकमात्र i18n नियम
# CLAUDE.md Write the UI copy in English and wrap it in <T>…</T> from i18n-keyless-react. That is the whole i18n setup.
आपका एजेंट इसे चला सकता है, केवल लिख सकता है ऐसा नहीं
MCP सर्वर के माध्यम से, एजेंट लापता अनुवादों को सूचीबद्ध करता है, एक को पढ़ता है, खराब को ओवरराइड करता है, या आपके पास पहले से मौजूद कॉपी को आयात करता है — अपने स्वयं के OAuth लॉगिन के साथ, बिना किसी कुंजी को पेस्ट किए।
MCP गाइड पढ़ेंपहले दिन से ही वैश्विक स्तर पर लॉन्च करें
जटिलता के कारण i18n में देरी करना बंद करें। इसे 5 मिनट में, दिनों में नहीं, लागू करें। अपनी विकास गति बनाए रखें जैसे कि i18n लागू नहीं किया गया हो।
- 5-मिनट में लागू करना। मज़ाक नहीं कर रहा हूँ।
एक सरल कॉन्फ़िग ऑब्जेक्ट और आप हो गए।
- विकास की गति बनाए रखें
जैसे कि i18n बिल्कुल लागू नहीं किया गया हो, वैसे कोड लिखें।
- वैश्विक बाजारों में भेजें
नई भाषाओं में स्केल करते समय रिफैक्टरिंग की आवश्यकता नहीं है।
- एसएसआर और एसईओ तैयार
Next.js, Remix, TanStack Start और Astro के साथ काम करता है। खोज इंजनों के लिए सर्वर-रेंडर किसी भी भाषा — समान 5-मिनट सेटअप।
पारंपरिक i18n
i18n-कुंजीरहित
इसको सेटअप करना कोई मुश्किल काम नहीं है
केवल सबसे सरल कॉन्फिग ऑब्जेक्ट और आप वैश्विक होने के लिए तैयार हैं।
और इससे भी अधिक, आपका एजेंट इसे आपके लिए सेट कर देगा।
1. मूल सेटअप
import * as I18nKeyless from "i18n-keyless-react";
I18nKeyless.init({
API_KEY: "YOUR_API_KEY",
storage: window.localStorage,
languages: {
primary: "en",
supported: ["en", "fr"],
},
});2. घटक उपयोग (यहाँ React; वही Vue, Angular, Flutter, Swift और Kotlin में)
import { I18nKeylessText } from "i18n-keyless-react";
// import { T } from "i18n-keyless-react"; // also works
// Just write in your primary language
<I18nKeylessText>
Welcome to our website
</I18nKeylessText>3. सर्वर-साइड उपयोग (यहाँ Node.js; Laravel, Rails, Python और Go में वही कॉल)
import { awaitForTranslationOrFallbackToOriginal, type Lang } from 'i18n-keyless-node';
const title = await awaitForTranslationOrFallbackToOriginal('Come see my app!', user.lang as Lang);
const body = await awaitForTranslationOrFallbackToOriginal('So many new stuff!', user.lang as Lang);
await sendExpoPushNotification({ user, title, body });4. घटकों के बाहर के पाठ के लिए
import { getTranslation } from "i18n-keyless-react";
export default function Navigation() {
return (
<HomeTabs.Navigator>
<HomeTabs.Screen
options={{ tabBarLabel: getTranslation("Welcome") }}
name="WELCOME"
/>
</HomeTabs.Navigator>
);
}5. अपना SDK चुनें: एक इंस्टॉल लाइन, हर जगह एक ही API
- React, React Native, Expo, Next.js, Remix, TanStack Start, Astronpm install i18n-keyless-react
- Vue, Nuxtnpm install i18n-keyless-vue
- Angularnpm install i18n-keyless-angular
- Plain HTML, Svelte, Alpine, htmx, one script tagnpm install i18n-keyless-browser
- Node.jsnpm install i18n-keyless-node
- Laravel, PHPcomposer require i18n-keyless/laravel
- Rails, Rubybundle add i18n-keyless-rails
- Flutter, Dartflutter pub add i18n_keyless
- Swift, iOS, macOS, VaporSwiftPM: arnaudambro/i18n-keyless-swift
- Kotlin, Android, Ktorio.github.arnaudambro:i18n-keyless-kotlin
- Python, Django, Flask, FastAPIpip install i18n-keyless
- Gogo get github.com/arnaudambro/i18n-keyless/ports/go/v3
अनुवाद कैसे काम करते हैं
i18n-keyless एक लाइब्रेरी है, जो एक API सेवा के साथ मिलकर काम करती है, जो आपको अपने टेक्स्ट को कुंजियों का उपयोग किए बिना अनुवाद करने की अनुमति देती है।
यदि अनुवाद नहीं मिलता है, तो I18nKeyless की API से AI API कॉल द्वारा अनुवाद प्राप्त करने के लिए एक असिंक्रोनस fetch किया जाएगा।
यह ऑपरेशन आमतौर पर डेव मोड में किया जाता है, जबकि आप कोडिंग कर रहे होते हैं। यदि आपने एक चूक गए, तो उत्पादन में केवल पहला उपयोगकर्ता जिसे अनुवाद की कमी है, एक गड़बड़ देखेगा, फिर यह पूरी दुनिया के उपयोगकर्ताओं के लिए तुरंत उपलब्ध हो जाएगा।
आपकी स्टोर लिस्टिंग हर भाषा में, हर रिलीज़ पर
प्रत्येक अपडेट का मतलब है नए रिलीज़ नोट्स, विवरण और कीवर्ड — प्रत्येक भाषा के लिए, दोनों स्टोरों पर। यही वह है जो आपको भाषाएँ जोड़ने से रोकता है। ऐप नहीं।
- प्रत्येक भाषा के लिए रिलीज़ नोट्स, एक कॉल में
अपडेट को एक बार लिखें। awaitForTranslation इसे हर उस भाषा में लौटाता है जिसमें आप बेचते हैं, और आपकी स्टोर कॉन्फिग इसे EAS या fastlane को भेजता है।
- 48 भाषाएँ, ऐप स्टोर स्लॉट्स में मैप की गई हैं
pt-BR और pt-PT दो सूचियाँ हैं; en-GB, en-AU और en-CA तीन हैं। toAppStoreLocale प्रत्येक अनुवाद को सही स्थान पर रखता है।
- रिलीज़ के बिना एक खराब अनुवाद ठीक करें
ऐप में, डैशबोर्ड में एक ओवरराइड एक बार में लाइव होता है — कोई हॉटफिक्स बिल्ड नहीं, कोई स्टोर समीक्षा नहीं। सूची में, पुश को पुनः चलाएँ।
- प्रति शब्द मूल्य निर्धारित नहीं है
एक अनुवादक लगभग €0.10 प्रति शब्द लेता है। 10 भाषाओं में 2,000 स्ट्रिंग्स एक ऐसा बजट है जो एक स्वतंत्र डेवलपर वहन नहीं कर सकता। यहां शब्दों की गणना नहीं की जाती है।
एक एक्सपो ऐप के लिए पूरा नुस्खा
// store.config.js — EAS Metadata awaits an async config
const { init, awaitForTranslation, toAppStoreLocale } = require("i18n-keyless-node");
const LANGS = ["en", "fr", "de", "ja", "pt-BR"];
const DESCRIPTION = "Bibi translates your app while you sleep…";
module.exports = async () => {
init({ API_KEY: process.env.I18N_KEYLESS_KEY, languages: { primary: "en", supported: LANGS } });
const info = {};
for (const lang of LANGS) {
info[toAppStoreLocale(lang)] = {
title: await awaitForTranslation("Bibi", lang, { context: "App Store app name, 30 characters max" }),
subtitle: await awaitForTranslation("Keyless i18n", lang, { context: "App Store subtitle, 30 characters max" }),
description: await awaitForTranslation(DESCRIPTION, lang, { context: "App Store description" }),
};
}
return { configVersion: 0, apple: { info } };
};वही कॉल Google Play के लिए fastlane मेटाडेटा फ़ाइलें लिखता है। कैप्स सलाहकार हैं: सीमा को संदर्भ में रखें और पुश करने से पहले लंबाई की जांच करें।
इंटरैक्टिव सैंडबॉक्स
देखें कि i18n-keyless वास्तविक समय में कैसे काम करता है
टाइप करते ही अनुवादों को हल होते देखने के लिए एक लाइव, संपादन योग्य स्टैकब्लिट्ज़ प्रोजेक्ट खोलें।
मैंने इसे क्यों बनाया
मैं हमेशा अंतर्राष्ट्रीयकरण को टालता रहा जब तक कि मेरा ग्राहक इतना चाहता था कि मेरे पास कोई चारा नहीं था। मुझे i18n कुंजियों वाले कोड को पढ़ना बिल्कुल पसंद नहीं, और मुझे JSON फ़ाइलों को बनाए रखना भी उतना ही नापसंद है जितना i18n अनुवाद प्रदाताओं की महंगी दरें देखना। इसलिए मुझे अपना खुद का बनाना पड़ा, और मुझे यह बहुत पसंद है। अब मेरे सभी ऐप्स डिफ़ॉल्ट रूप से अंतर्राष्ट्रीयकृत हैं।
Arnaud Ambroselli
i18n-keyless के संस्थापक
अक्सर पूछे जाने वाले प्रश्न
क्या मुझे अनुवाद फ़ाइलों को प्रबंधित करने की आवश्यकता है?
नहीं। कोई JSON फ़ाइलें नहीं हैं, कोई कुंजी निकासी चरण नहीं है, और कोई बिल्ड-टाइम प्लगइन नहीं है। आप अपने स्रोत भाषा में अपने वाक्य लिखते हैं, SDK पहले अनुरोध पर उन्हें API पर भेजता है, API उन्हें AI के साथ अनुवाद करता है, और हर बाद के अनुरोध कैश से सेवा प्रदान किया जाता है। आपका कोड सत्य का एकमात्र स्रोत है।
जब मैं स्रोत पाठ बदलता हूँ तो क्या होता है?
स्रोत पाठ कुंजी है। इसे बदलें और आपको एक नई कुंजी मिलेगी जिसमें ताज़ा AI अनुवाद होगा। पुरानी कुंजी बस अनुरोधित होना बंद हो जाती है, और डैशबोर्ड इसे 30 दिनों तक बिना उपयोग के रहने के बाद साफ कर देता है। टाइपो फिक्स भी ऐसा ही है: इसे कोड में ठीक करें, तैनात करें, और नया पाठ पहली बार अनुरोध पर अनुवादित हो जाएगा।
इसकी कीमत कितनी है?
स्व-होस्टेड: पूरी तरह से मुफ्त, असीमित परियोजनाएं, कोई सदस्यता नहीं और कोई उपयोग सीमा नहीं — Docker छवि स्थापित करें, अपनी स्वयं की AI कुंजी का उपयोग करें। क्या आपको यह पसंद है? मुझे टिप दें! होस्टेड: प्रति परियोजना प्रति माह एक निश्चित मूल्य, मासिक सक्रिय उपयोगकर्ताओं के अनुसार — 1,000 तक 4 यूरो, 5,000 तक 9 यूरो, 50,000 तक 29 यूरो, 500,000 तक 99 यूरो — मासिक बिल किया जाता है, कभी भी रद्द किया जा सकता है। दोनों मामलों में प्रति सीट, प्रति शब्द या प्रति स्ट्रिंग मूल्य निर्धारण नहीं है।
क्या मैं अपनी अनुवादों को निर्यात कर सकता हूँ?
हाँ। डैशबोर्ड में एक "एक्सपोर्ट JSON" बटन है जो आपके प्रोजेक्ट की हर ट्रांसलेशन को एक JSON फाइल के रूप में डाउनलोड करता है। निर्यात में सभी पंक्तियाँ शामिल हैं, न कि केवल वे जो पिछले 30 दिनों में उपयोग की गई थीं, इसलिए यह एक पूर्ण बैकअप है। कोई लॉक-इन नहीं है: आपका डेटा हमेशा एक क्लिक दूर है।
एक रखरखावकर्ता: क्या होता है अगर परियोजना बंद हो जाती है?
SDK MIT लाइसेंस के अंतर्गत हैं और npm, PyPI, RubyGems और अन्य रजिस्ट्री पर उपलब्ध रहते हैं। सर्वर Elastic License 2.0 के अंतर्गत सार्वजनिक है और उनके बीच का प्रोटोकॉल दस्तावेजित है, इसलिए कोई भी इसे चला सकता है, फोर्क कर सकता है या इसके खिलाफ सर्वर लिख सकता है। आपकी अनुवाद एक ही JSON निर्यात में किसी भी समय रहते हैं। यदि होस्ट किया गया सेवा बंद हो जाती है: स्थापित ऐप्स अपनी कैश्ड अनुवादों को सेवा देते रहते हैं, एक नया क्लाइंट सोर्स भाषा में वापस चला जाता है, और SDK को API_URL के साथ अपने स्वयं के उदाहरण पर निर्देशित करने से सब कुछ बहाल हो जाता है। आप जो खो देंगे वह है i18n-keyless.com पर नई स्ट्रिंग्स का AI अनुवाद — न तो आपका डेटा और न ही आपका ऐप।
पूरा उत्तर पढ़ें, कोड सहितडेमो देखें
इस छोटी वीडियो को देखें ताकि आप i18n-keyless को क्रियाशील होते हुए देख सकें