Self-Hosted

Translate your app
without the headache

Open-source translation management you host yourself. Push keys from your code, translate in the browser, pull them back. That's it.

translato push
$translato push
Pushing keys to Translato...
./src/locales/en.json248 keys
Terms — parsed: 248, added: 12
Translations (en) — parsed: 248, added: 12, updated: 3
✓ Push complete.

What's included

Built for how
dev teams actually work.

Multi-Project

Manage a bunch of projects with different languages and teams from one place. No juggling spreadsheets.

Team Collaboration

Translators edit in the browser, devs work in the CLI. Everyone sees changes in real time. Nobody overwrites anyone.

Developer-First

CLI, REST API, and webhooks. Supports JSON, YAML, PO, and Properties. Fits into the workflow you already have.

Actually Fast

Incremental sync so you only push what changed. WebSocket updates so you never hit refresh. Caching everywhere.

Self-Hosted

Runs on your servers. Your translation data never leaves your infrastructure. Auth includes JWT, role-based access, and 2FA.

Migrate from POEditor

The API is POEditor-compatible. Point your existing scripts at Translato and they just work. Switch in an afternoon.

How it works

Four steps.
That's the whole thing.

Step 01

Install the CLI

One npm install. Works with JSON, YAML, PO, and Properties files out of the box.

$ npm install -g translato-cli
Step 02

Push your keys

Run one command and your translation keys show up in the dashboard, ready for translators.

$ translato push
Step 03

Translate

Your team translates in the web editor. There's translation memory, AI suggestions, and real-time collaboration built in.

Step 04

Pull & ship

Pull the translated files back into your repo. Or add it to your CI/CD pipeline and forget about it.

$ translato pull --format json

Translation Editor

Translators get a real editor

Not a spreadsheet. An actual editor where translators see context, get AI suggestions, and work alongside the rest of the team in real time.

AI translation suggestions (OpenAI, DeepL, Google)
Inline editing — click a cell, type, done
Translation memory across projects
See who else is editing right now
my-app — Spanish (es)
2 online
KeyEnglishSpanishStatus
auth.login.titleSign in to your accountInicia sesión en tu cuentaTranslated
auth.login.emailEmail addressCorreo electrónicoTranslated
auth.login.forgotForgot password?¿Olvidaste tu contraseña?Translated
nav.dashboardDashboardPanel de controlTranslated
nav.projectsProjectsProyectosTranslated
common.saveSave changesUntranslatedMissing
5/6 translated · 83%

Stop paying
per seat.

Host it yourself, add as many users as you want, and own your data. Takes about 10 minutes to set up.