
AstrologerAI: an AI astrology app localized into 52 languages
How the AstrologerAI app translated its entire experience into 52 languages with LocalePack — 6.3M tokens for $58.73 — to reach a worldwide audience in their own language.
元の messages.json をアップロードし、対象言語を選び、1回の支払いで、すぐに公開できる _locales の ZIP をダウンロードできます。
browser extension をローカライズするための簡単な3ステップ。翻訳は支払い後に実行され、ジョブをキューに入れて数分で ZIP を生成します。
元の messages.json ファイルをドロップしてください。すぐに解析し、browser extension の形式を検証します。
52言語から選べます。支払い前に、ファイルサイズに基づく明確な料金を確認できます。
Stripe で1回だけ支払います。すべての _locales/{lang}/messages.json ファイルを生成し、ZIP にまとめます。
アップロード前に支払い金額を正確に確認できます。最終見積もりは、アップロード後に文字列の長さと選択した言語に基づいて算出されます。
ここにmessages.jsonをドロップ
またはクリックして参照
WebExtension messages.json format. Max 500KB.
55言語中3言語を選択
最終価格は、チェックアウトページでファイルをアップロード後に算出されます
一括払い • サブスクリプションなし
browser extensionのロケール形式に特化。汎用的な翻訳ツールではありません。
browser extensionのmessages.json構造(message、description、placeholders)に特化して構築されています。
$PLACEHOLDER$構文をそのまま正確に保持します。変数はすべての言語でそのまま維持されます。
descriptionフィールドを読み取り、より正確なAI翻訳のためのコンテキストヒントとして活用します。
正しい_locales/{lang}/messages.jsonのフォルダ構成でZIPをダウンロードできます。拡張機能にそのまま入れるだけです。
すべての言語を同時に翻訳します。ほとんどのジョブは5分以内に完了します。
サブスクなし、月額料金なし。ジョブごとに一度支払えば、いつでもダウンロードできます。
Every major browser reads the same _locales/{locale}/messages.json structure. Chrome, Edge and Opera expose the chrome.i18n namespace; Firefox and Safari expose browser.i18n. The file format, the placeholder syntax and the default_locale requirement are identical across all of them, which is why a single translated folder ships everywhere.
_locales/
├── en/
│ └── messages.json ← default_locale
├── de/
│ └── messages.json
├── fr/
│ └── messages.json
└── ja/
└── messages.json{
"appName": {
"message": "My Extension",
"description": "Extension name"
},
"greeting": {
"message": "Hello, $USER$!",
"placeholders": {
"user": { "content": "$1" }
}
}
}ランタイムAPI
chrome.i18n / browser.i18n呼び出し例
getMessage("key")マニフェストで必須
"default_locale"In-extension strings come from _locales/. Store listing copy is managed separately in each store's own dashboard — translating one does not translate the other.
The messages.json format is shared across every major browser. Only four things vary, and none of them require re-translating your strings.
One translated _locales/ folder covers Chrome, Firefox, Edge, Opera, and Safari. The porting work is in the build, never in the strings.
汎用の翻訳ツールはbrowser extension形式を理解しません。
LocalePack | 手動翻訳 | 汎用TMS | |
|---|---|---|---|
| セットアップ時間 | 2分 | 言語ごとに数時間 | 30分以上 |
| 料金の透明性 | |||
| WebExtension形式の安全性 | |||
| プレースホルダー保護 | |||
| 速度(52言語) | 5分未満 | 週 | 時間 |
| 最適な用途 | Cross-browser extensions | 小規模プロジェクト | エンタープライズ向け Web アプリ |
LocalePack を使って、最大 52 言語でグローバルなユーザーに届けた実際のプロジェクト。

How the AstrologerAI app translated its entire experience into 52 languages with LocalePack — 6.3M tokens for $58.73 — to reach a worldwide audience in their own language.

How the DevToys.pro web app translated its entire UI into 52 languages with LocalePack — 5.8M tokens for $58.44 — and quadrupled its international organic traffic.

How the DevToys New Tab Chrome extension localized both its in-extension UI and its Chrome Web Store listing into 52 languages to reach a global audience.

We used our own tool to translate the entire LocalePack site into 52 languages — 2.9M tokens for $27.37 — so developers worldwide find us in their own language.
“面倒な作業を何時間も節約できました。messages.json をアップロードしたら、必要な形式そのままで完璧な翻訳が返ってきました。”
Sarah K.
個人開発者、AdBlock 拡張機能
“We ship the same _locales folder to Chrome, Firefox and Edge. One translation pass covers all three.”
Marcus T.
拡張機能メンテナー
“透明な料金体系が決め手でした。何かをアップロードする前に、支払う金額が正確に分かりました。”
Dev J.
オープンソース貢献者
52
対応ロケール
100%
プレースホルダーを安全に保持
ZIP
すぐにリリース可能
LocalePack について知っておくべきことをまとめました。
Deep dives on the formats, APIs and errors behind this page — written for developers, not translators.
A complete reference for the WebExtension messages.json format: the message, description, and placeholders fields, $PLACEHOLDER$ syntax, $1 positional substitutions, and common mistakes.
How @wxt-dev/i18n compiles YAML, JSON, JSONC, JSON5 and TOML message files into standard _locales/{lang}/messages.json — setup, nested keys, plurals, substitutions, type safety, and how to translate a WXT project.
Plasmo does not read _locales/ at the project root. The three paths it does accept, where default_locale actually lives, the alphabetical-default trap, and how to place a translated _locales ZIP correctly.
CRXJS ships no i18n helper and its docs have no i18n page. Here is the working pattern: put _locales under public/, declare default_locale in manifest.config.ts, and call chrome.i18n directly.