i18n4e
v0.9.1
Published
i18n4e is a quick and easy way to add internationalization support to your Express Js application.
Downloads
19
Maintainers
Readme
i18n4e: i18n for Express Js 🎨🌍
i18n4e is a package that offers a modern, quick and easy way to add internationalization support to your Express Js application.
🚀 Installation
npm install i18n4e
or
yarn add i18n4e
In the client:
<script src="https://cdn.jsdelivr.net/npm/i18n4e/client-dist/i18n4e.min.js"></script>
or
<script src="/node_modules/i18n4e/client-dist/i18n4e.min.js"></script>
📚 Docs
To see the full documentation, please visit the official documentation.
📖 Simple Usage In 6 Steps
Install the package
npm install i18n4e
Import the package
const {i18n4e} = require('i18n4e');
Create a _locales folder in the root of your project and add the locales files
project ├── node_modules ├── package.json ├── index.js └── _locales ├── en │ └── translation.json ├── pt_br │ └── translation.json └── es └── translation.json
Add variables in the translation.json files for each language
├── en/translation.json
{
"hello-world": "Hello World!"
}
├── pt_br/translation.json
{
"hello-world": "Olá Mundo!"
}
├── es/translation.json
{
"hello-world": "Hola Mundo!"
}
In your view files (example: index.ejs or index.html) add i18nID attributes to the elements you want to translate
<h1 i18nID="hello-world">Hello World!</h1>
Start i18n4e on your file by passing your app express
i18n4e.init(app,{ defaultLang:'en', // define the main language })
Its done! Now your application is ready to be translated into multiple languages.
For more examples and configurations, please visit the Examples.
💭 Philosophy
i18n4e, created with ❤️ by Luiisp, is a package with the philosophy of demystifying the difficulty of implementing i18n in web applications. At a high level, you can make various complex configurations using only boolean options.
📦 Benefits
- Modern syntax written with typescript
- Fast and Scalable Execution
- ES6/ESM and Common Js support
- Easy to use
- Change language by session support
- HTML/EJS support
🕶️ Examples
We have several ready-made project examples using i18n4e that you can view and use as you wish.
Click to see them 😎
💪 Contributing
We welcome contributions to the i18n4e project! If you would like to contribute, please follow these steps:
- Fork the repository on GitHub.
- Clone your forked repository to your local machine.
- Create a new branch for your changes.
- Make your desired changes to the codebase.
- Test your changes to ensure they work as expected.
- Commit your changes and push them to your forked repository.
- Submit a pull request to the main i18n4e repository.
Please make sure to follow our contribution guidelines and adhere to our code of conduct when contributing.
We appreciate your contributions and look forward to working with you!
📝 License
This project is licensed under the MIT License - see the LICENSE file for details
inspired by chrome.i18n
Created with ❤️ by luiisp