v148 · Progressive Web Apps
Locale Switcher
Edit localized manifest strings for five locales and watch the simulated PWA install prompt update in real time. Includes RTL/LTR toggle, missing-translation coverage checker, and _locales directory export.
locale editor
Edit strings
coverage checker
Missing translations are shown in red. The browser falls back to the default locale (en) for any missing string.
| Locale | name | description | shortcut_1 | shortcut_2 | Coverage |
|---|
generate _locales structure
The manifest _locales directory structure mirrors the Chrome Extension i18n convention. Each locale gets a messages.json file.
how it works
A PWA manifest can embed localized strings using name_localized, description_localized, and similar members. Each is an object keyed by BCP-47 locale. The browser runs the same Accept-Language matching algorithm it uses for HTTP — including subtag fallbacks — and picks the best match automatically.
{
"name": "My App",
"name_localized": {
"fr": "Mon Application",
"de": "Meine App",
"ja": "マイアプリ",
"ar": "تطبيقي"
},
"description_localized": {
"fr": "Une application formidable.",
"de": "Eine großartige App.",
"ja": "素晴らしいアプリです。",
"ar": "تطبيق رائع."
}
}
references
implementation reference
Need the exact API surface, compatibility boundaries, errors, lifecycle, and source links? Read the matching gendn reference ↗