Localization

Should you build your own Loco?

Hosted translation management for app strings: a web editor for keys and locales, plus export to the dozens of file formats platforms actually expect.

With trade-offs · the basics, with limitations
Price $5.95/moEstimated savings $71.40/yrEstimated time a weekendCategory LocalizationCatalog votes 0

The core of Loco is a keyed string store with a locale matrix on top, and that part is genuinely a one-sitting build: SQLite, a table view, an import and an export. What eats the weekend is the format layer, because gettext PO with plural headers, Apple .strings and .stringsdict, Android plurals XML, ICU messages and flat JSON all disagree about pluralization and escaping in ways that only show up in production. Machine translation fill-in is a single API call if you already have a DeepL or provider key. If you are the only translator, a local build is fine and arguably faster to work with. If you send links to freelance translators and rely on the hosted API in CI, you are rebuilding a service, not a tool.

ENOriginal research content in English. Original prompt preserved in English.

The complete prompt
Build a local translation management app called Strings. No accounts, no cloud, no telemetry.

Stack, non negotiable:
- Node 20 with Express and TypeScript
- SQLite via better-sqlite3, file at ./data/strings.db
- Server rendered EJS templates plus a little vanilla JS, no React, no bundler
- Runs with `npm run dev` on localhost:4321

Data model:
- projects: id, name, source_locale
- locales: id, project_id, code (BCP 47)
- keys: id, project_id, name (dot notation allowed), context note, created_at
- translations: key_id, locale_id, plural_category (one of other, one, two, few, many, zero), value, updated_at
- history: translation_id, old_value, new_value, changed_at

UI:
- Project list, then a grid page per project: rows are keys, columns are locales, cells are inline editable textareas that save on blur via fetch
- Filters: untranslated only, search by key or value substring
- Per key detail drawer showing context note, plural forms, and history
- Progress bar per locale showing percent of keys with a non empty value

Import and export, implement exactly these three formats and be strict:
- Flat and nested JSON
- gettext PO, including Plural-Forms header parsing and msgid_plural
- Android strings.xml, including plurals blocks with quantity attributes
Use the CLDR plural categories for each locale code; hardcode a small lookup table for the twenty most common locales and fall back to other plus one.

Also ship a CLI: `npm run export -- --project=X --locale=fr --format=po --out=./out` so a build script can use it.

Optional machine translation: if DEEPL_API_KEY is set in .env, add a "fill empty cells" button per locale that batches untranslated source strings through DeepL and marks results as machine translated with a flag shown in the grid. If the key is missing, hide the button rather than erroring.

Out of scope: multi user auth, sharing links, webhooks, screenshots, glossary, TMX.

Include a README with setup, a `.env.example`, and seed data for one project with English, French and Polish so plural handling is exercised on day one.

The prompt opens pre-filled in your agent. Review it before running. · this prompt is generated from the build plan · improve it via PR

Original prompt preserved in English.

What would building your own look like?

A local web app that stores translation keys per project, shows a locale-by-key grid you can edit, imports and exports JSON, PO and Android XML, and optionally machine-translates empty cells.

What you will need

Why paying can still make sense

Because localization is a pile of edge cases someone else already ate. Plural categories vary by language, every platform escapes strings differently, and one bad export ships mangled text to users in a language nobody on the team reads. Paying also buys a link you can send to a contractor and an API your build can hit, which a folder on your laptop cannot do. Solo developers with two or three locales tend to outgrow the need for that rather than into it.

What you lose

xFormat breadth: Loco reads and writes a long tail of formats, including the awkward Apple and Qt ones, with plural rules per locale already correct

xA shareable editor for non-technical translators, with roles, comments and progress tracking

xA stable public API and CLI that CI pipelines can pull from at build time

xTranslation history, who changed what, and the ability to roll a string back

xGlossary and translation memory suggestions that improve as the project grows

prior art · use these instead of building, if you’d rather

Nothing worth pointing at. That’s why the prompt exists.

Share on X ↗"I just replaced Loco ($5.95/mo) with one prompt"
Plans and pricing

How much does Loco cost?

In your currency · US DollarChecked on 10/20/2026
Monthly billing
$5.95/mo
Per year
$71.40/yr
Buy on the official site

You complete the purchase on Loco’s site. Vibe Radar does not handle payments.

Build or buy

Is it cheaper to build or buy Loco?

Adjust the numbers: hours to build, your hourly rate, running costs and the subscription price.

Subscribe
Build it yourself
Horizon
Subscribe$143
Build it yourself$2,360

Over 24 months, subscribing is cheaper.

Starting hours estimated from the analysis (a weekend). Does not price what you give up (support, integrations, security).

Frequently asked questions
Can I rebuild Loco?

Kinda. The core of Loco is buildable in a weekend with the prompt on this page, but there are real gaps: Format breadth: Loco reads and writes a long tail of formats, including the awkward Apple and Qt ones, with plural rules per locale already correct, A shareable editor for non-technical translators, with roles, comments and progress tracking. Read the honest list above before committing.

How much does Loco cost?

Loco costs about $5.95/mo (Pro, checked 10/20/2026), which is $71.40 per year.

What do I lose by replacing Loco?

Honestly: Format breadth: Loco reads and writes a long tail of formats, including the awkward Apple and Qt ones, with plural rules per locale already correct; A shareable editor for non-technical translators, with roles, comments and progress tracking; A stable public API and CLI that CI pipelines can pull from at build time; Translation history, who changed what, and the ability to roll a string back; Glossary and translation memory suggestions that improve as the project grows. If any of those are load-bearing for you, keep paying.

Is there an open-source alternative to Loco?

No mature open-source alternative worth pointing at, which is exactly why the one-shot prompt on this page exists.

New ideas on your radar.

Get catalog updates and prompts for your next project.