Myelin seamlessly integrates localization into your development process, freeing you to prioritize building exceptional user experiences while minimizing time spent on translation tasks.
Translation calls happen on your machine. We never send your data to third party APIs or any other external databases.
Myelin is fully open source. You can read every single line of code on the GitHub repository.
Myelin is free. Now and forever.
Myelin is flexible. You can choose from four different infrastructures: openai, deepseek, moonshot, and qwen.
With Myelin, you can bring your own model.
next-intl, react-intl, react-i18next, etc. Myelin supports them all.
Myelin supports both namespaced and non namespaced translation files out of the box
Ensure that you have a 'myelin.config.json' configuration file located in the root of your project. Below is an example.
myelin.config.json
{
"aiProvider": "deepseek",
"aiModel": "deepseek-chat",
"locale": {
"location": "locales",
"sourceLanguage": "en",
"targetLanguages": [
"es",
"fr",
"zh",
"zh-TW",
"en-US"
]
}
}
Next, go ahead and add `AI_API_KEY` in your `.env` file. This is needed to run perform translations
.env
AI_API_KEY=sk-proj-your-api-key
Next, on your terminal run:
> npx myelin.dev@latest translate
When you run this command, Myelin loads your source JSON files (e.g., locales/en/common.json), identifies any new or updated translation strings, produces translations for your specified target languages, and creates or updates the relevant target language JSON namespaced files (e.g., locales/fr/common.json, locales/es/common.json, locales/zh/common.json).