
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.
Ladda upp din källfil messages.json, välj målspråk, betala en gång och ladda ner en _locales-ZIP som är redo att levereras.
Tre enkla steg för att lokalisera ditt browser extension. Översättningarna körs efter betalning – vi köar jobb och genererar ZIP-filen på några minuter.
Släpp din källfil messages.json. Vi tolkar den direkt och validerar formatet för browser extension.
Välj bland 52 språk. Se transparent prissättning baserad på din filstorlek innan du betalar.
Betala en gång via Stripe. Vi genererar alla _locales/{lang}/messages.json-filer och paketerar dem i en ZIP.
Se exakt vad du kommer att betala innan du laddar upp. Slutpriset beräknas efter uppladdning baserat på stränglängd och valda språk.
Släpp messages.json här
eller klicka för att bläddra
messages.json input. Max 500KB.
3 av 55 språk valda
Slutpriset beräknas efter filuppladdning på kassasidan
Engångsbetalning • Ingen prenumeration
Specialbyggt för browser extensions locale-format. Inte ett generiskt översättningsverktyg.
Byggt specifikt för browser extensions messages.json-struktur med stöd för message, description och placeholders.
Bevarar $PLACEHOLDER$-syntaxen exakt som den är. Dina variabler förblir intakta på alla språk.
Vi läser dina description-fält och använder dem som kontextledtrådar för mer träffsäkra AI-översättningar.
Ladda ner en ZIP med korrekt _locales/{lang}/messages.json-mappstruktur. Lägg in den i ditt tillägg.
Alla språk översätts samtidigt. De flesta jobb blir klara på under 5 minuter.
Inga prenumerationer, inga månadsavgifter. Betala en gång per jobb, ladda ner för alltid.
A messages.json entry pairs a key with a "message" string, an optional "description" used as translation context, and an optional "placeholders" map. LocalePack parses all three: it translates only the message text, forwards the description to the model as context, and returns $PLACEHOLDER$ and $1 substitution tokens byte-identical.
_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" }
}
}
}Runtime-API
chrome.i18n / browser.i18nExempelanrop
getMessage("key")Krävs i manifestet
"default_locale"The same translated messages.json drops into _locales/{locale}/ for Chrome, Firefox, Edge, Opera and Safari without further edits.
A messages.json entry is more than a key and a string. Getting these four pieces wrong is what breaks extensions after machine translation.
Most generic translation tools treat $PLACEHOLDER$ and $1 as ordinary words. Once they are translated or reordered, the extension ships with broken interpolation.
Översättningsverktyg för allmänt bruk förstår inte browser extension-formatet.
LocalePack | Manuell översättning | Generiskt TMS | |
|---|---|---|---|
| Uppstartstid | 2 minuter | Timmar per språk | 30+ minuter |
| Kostnadstransparens | |||
| Säkerhet för WebExtension-format | |||
| Platshållarskydd | |||
| Hastighet (52 språk) | < 5 min | Veckor | Timmar |
| Bäst för | Any messages.json file | Små projekt | Webbappar för företag |
Riktiga projekt som använde LocalePack för att nå en global publik på upp till 52 språk.

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.
“Sparade mig timmar av tråkigt arbete. Laddade upp min messages.json och fick tillbaka perfekta översättningar i exakt det format jag behövde.”
Sarah K.
Indieutvecklare, AdBlock-tillägg
“Our $PLACEHOLDER$ tokens came back untouched in all 52 locales. That is the whole reason we stopped scripting it ourselves.”
Marcus T.
Tilläggsförvaltare
“Transparent prissättning var det som avgjorde. Jag visste exakt vad jag skulle betala innan jag laddade upp något.”
Dev J.
Bidragsgivare till öppen källkod
52
Språkversioner som stöds
100%
Platshållarsäkert resultat
ZIP
Redo att leverera
Allt du behöver veta om 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 to catch every class of messages.json error before your users do: JSON syntax, missing required fields, missing keys across locales, malformed placeholder syntax, and manifest key mismatches.
How the __MSG_key__ substitution syntax works in Chrome and Firefox extension manifests: which fields support it, how Chrome resolves tokens at load time, and the pitfalls that cause silent failures or upload rejections.
getMessage() returns an empty string when a message is missing, and logs nothing at all. Every cause of the silent empty string, how to tell it apart from undefined, and how to confirm each one.
Betala en gång – Ladda ner ZIP – Lansera globalt
Prova LocalePack