json-locale-translator
v1.0.3
Published
A CLI tool for translating JSON locale files between multiple languages
Downloads
143
Maintainers
Readme
JSON Locale Translator
A command-line tool to translate JSON-based locale files using Google Translate.
Features
- 🔄 Translates JSON locale files while preserving structure
- 🌐 Supports multiple languages
- 🎯 Handles nested JSON objects
- 💪 Preserves original keys
- 🎨 Colorful console output for better visibility
Installation
# Using npm
npm install -g json-locale-translator
# Using locally
npm install json-locale-translator
# Using yarn
yarn add -g json-locale-translator
# Using locally yarn
yarn add json-locale-translator
Usage
Using globally
Show help
json-locale-translator --helpTranslate a file
json-locale-translator -s example/en.json -f en -t esInteractive mode
json-locale-translator -iUsing locally
- Then add scripts to your project's package.json:
"scripts": {
"translate": "json-locale-translator",
"translate:es": "json-locale-translator -s example/en.json -f en -t es",
"translate:fr": "json-locale-translator -s example/en.json -f en -t fr",
"translate:interactive": "json-locale-translator -i"
}npm run translate- use with npx
npx json-locale-translator -s example/en.json -f en -t esBasic Usage (with global installation)
- Create a Source File
mkdir locales && echo {} > locales\en.json- Interactive Translation (Recommended)
json-locale-translator -s example/en.json -f en -t esSample Input/Output
Input (en.json):
{
"welcome": "Welcome to our application",
"navigation": {
"home": "Home",
"about": "About",
"contact": "Contact"
}
}Output (es.json):
{
"welcome": "Bienvenido a nuestra aplicación",
"navigation": {
"home": "Inicio",
"about": "Acerca de",
"contact": "Contacto"
}
}Supported Languages
The tool supports all languages available in Google Translate. Some common language codes:
en- Englishes- Spanishfr- Frenchde- Germanit- Italianpt- Portugueseru- Russianzh- Chineseja- Japaneseko- Korean
Development
# Clone the repository
git clone https://github.com/MhamedEl-shahawy/json-locale-translator.git
# Install dependencies
cd json-locale-translator
npm install
# Link for local development
npm linkProject Structure
json-locale-translator/
├── src/
│ └── index.js # Main CLI tool
├── example/
│ ├── en.json # Source example
│ └── es.json # Translated example
├── scripts/
│ └── batch-translate.js # Batch translation script
├── package.json
└── README.mdContributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- google-translate-api-x for translation services
- commander for CLI argument parsing
- chalk for colored console output
Issues
If you find any bugs or have feature requests, please create an issue in the GitHub repository.
Author
Support
⭐️ If you find this project useful, please consider giving it a star on GitHub!
