Skip to content

Product

Everything between “new string” and “shipped in twelve languages”.

Rodarion is where your app’s texts live while they are written, translated and reviewed. Your repository stays the place where they are used.

Companyyour tenant, users and roles
Projectsone per app or source, unlimited
Languagesa source plus any number of targets
Keysgrouped in namespaces, with tags
Translationsstatus, history, comments, images

A review workflow with a memory

Each translation moves from missing to draft, through review and approval. Every change to text, status or placeholders is logged, and every translation can carry comments and screenshots.

  • Bulk actions for review and approval, guarded by permissions
  • “Update needed” sends a text back with a reason
  • Download only approved texts for a release build
  • Placeholder check: a translation with the wrong placeholders cannot be saved

Product managers

Set up projects and languages, invite people, approve texts for release.

Translators

Translate with screenshots, comments and translation memory. No code, no files.

Testers and UI designers

Review copy in context and send it back with “update needed” and a comment.

Developers

Sync from the terminal or CI. Never resolve a language-file merge conflict again.

Machine translation, on your terms

Connect your own provider key and Rodarion fills missing translations whenever new keys arrive. You choose the provider per project or per language.

  • Translation memory first: approved pairs are reused for free
  • Placeholders survive the round trip
  • Results start at “review needed”, never as final
  • Approved texts are never re-translated

Providers

  • DeepL
  • Google Translate
  • OpenAI
  • Anthropic
  • Any OpenAI-compatible endpoint

Export profiles that match your files byte for byte

A profile describes format, structure, separators and placeholder style. Upload and download use the same profile, so a sync is a clean diff, not a reformat.

Format reference
JSONflat or nested, one file or one per namespace
PHP arraysLaravel lang folders
XMLAndroid string resources
.stringsApple localizable strings
.plistApple property lists

Placeholders: :name{name}%s{{name}}%@

Follows your git branches

Each feature branch syncs to its own shadow project, so half-finished strings never reach the shared project. Merging promotes them; abandoning a branch discards them.

How branches work
feature/checkout
$ rodarion up
✓ shadow project for branch feature/checkout
✓ 6 keys created · 18 translations filled
# …merge the pull request…
$ rodarion promote --branch feature/checkout
✓ folded into the central project
# or let `rodarion ci github` do it on every merge

Run it with confidence

Roles on two levels

Company roles and project roles, enforced on the server. Give a freelancer one project and nothing else.

Two-factor login

Authenticator-app 2FA with recovery codes for every user.

Scoped API tokens

Each token is bound to one project and only the abilities it needs.

Backups

Daily database backups and restorable per-company archives.

Start free

Your agent can set this up in minutes.

Paste the prompt, review the diff, give it your e-mail. That’s the whole onboarding.

Paste into your coding agent
Set up Rodarion translation management for this repository.
Fetch https://www.rodarion.com/llms/start.md and follow it.
Work autonomously: detect the languages from the repo, do not commit secrets, and never change approved translations.
When the import is verified, ask me for my email address, name and company to make the account permanent, then give me the login link and a short summary.