AppJars Internationalization Manager - Vaadin Add-on Directory
Database-backed translations for Vaadin apps: manage languages and keys in a ready-made UI, import and export .properties files and update text without redeploying. Commercial AppJar with a free mode.> **Licensing:** this add-on is a thin wrapper licensed under **Apache 2.0**. It contains no code of its own and simply pulls in the **I18N Manager AppJar** modules, which are **commercial software** distributed under the [AppJars Software License Agreement](https://www.appjars.com/legal/license/v1/). You can use I18N Manager for free in **free mode** (up to 2 languages and 100 translation items). A license removes all limits. See [Licensing](https://docs.appjars.com/licensing/).
**I18N Manager** moves your application's translations from static `.properties` files into the database, with an administration UI built with Vaadin Flow. Add languages, fix typos and update copy in production without rebuilding or redeploying, while Vaadin's own `getTranslation()` calls keep working unchanged.
## Features
- **Database-driven translations:** languages, translation keys and their values are stored as JPA entities in your application database.
- **Runtime language management:** add languages by ISO code, with optional regional variants (e.g. `es_AR`), and choose the default language used as fallback.
- **Translator-friendly editing:** edit translations inline, show only untranslated keys, and see the default-language value next to each item as a reference.
- **Bulk import and export:** upload or download a language's translations as a `.properties` file, and *scan missing keys* from the bundled resource bundles to bootstrap a new language.
- **Transparent Vaadin integration:** a primary `I18NProvider` routes every translation call through the database, with `MessageFormat` placeholders and a supported-locale list that follows the stored languages.
- **Fallback chain and locale resolution:** missing values fall back from regional locale to base language, default language and classpath bundles; the session locale can optionally be re-resolved from the browser's `Accept-Language`.
## Installation
If your project doesn't declare it yet, add the Vaadin add-ons repository:
```xml
vaadin-addons
https://maven.vaadin.com/vaadin-addons
```
Add the dependency. The wrapper declares the AppJars repository (`https://maven.appjars.com`), so Maven resolves the modules automatically:
```xml
org.vaadin.addons.appjars
appjars-internationalization-manager
3.0.1
```
- **Gradle** ignores repositories declared in dependency POMs, so add `maven { url "https://maven.appjars.com" }` to your repositories.
- **Nexus/Artifactory mirroring everything (`mirrorOf *`):** your administrator needs to add a proxy for `https://maven.appjars.com`.
Then follow the [Getting started guide](https://docs.appjars.com/i18n-manager/getting-started/).
## Requirements
- Java 21
- Vaadin 25.2
- Spring Boot 4.1
- JPA / Hibernate
- On MySQL, a one-time change to a case-sensitive collation on the translation key column ([details](https://docs.appjars.com/i18n-manager/developer-guide/#mysql-required-setup))
## Included dependencies
| Artifact | License |
|---|---|
| `com.appjars:appjars-i18n-manager-flow` | AppJars Software License Agreement v1 (commercial) |
| `com.appjars:appjars-i18n-manager-business-impl` | AppJars Software License Agreement v1 (commercial) |
| `com.appjars:appjars-i18n-manager-data-impl` | AppJars Software License Agreement v1 (commercial) |
These modules transitively bring in the rest of the I18N Manager modules and `appjars-*-utils` (same commercial license), plus open-source libraries such as Vaadin add-ons by Flowing Code (Apache 2.0).
## Links
- [Product page](https://www.appjars.com/catalog/i18n-manager/)
- [Documentation](https://docs.appjars.com/i18n-manager/overview/)
- [Demo application](https://github.com/AppJars/i18n-manager-demo)
- [Licensing and free mode](https://docs.appjars.com/licensing/)
AppJars are built and maintained by [Flowing Code](https://www.flowingcode.com).
Online DemoDiscussion Forum
Author Homepage
View on GitHub
Issue tracker
AppJars Internationalization Manager version 3.0.1
A patch release, with a single fix for the administration views.
#### Fixes
- The **browser resize listeners** of the Language Management and Translation Items views are now released when the view detaches, instead of living for the whole session.