Translation key management for app teams

One source of truth for every string in your app. Synced both ways.

Rhodarion keeps translation keys, copy and locales for all your platforms in one place — and syncs them with your codebase via CLI and REST API without merge conflicts, ghost keys or format gymnastics.

Built for iOS, Android, web and PHP toolchains. Hosted in Switzerland 🇨🇭

project: mobile-banking-app
dashboard.greeting.title
de-CHWillkommen zurück, {name}!APPROVED
enWelcome back, {name}!APPROVED
frContent de vous revoir, {name} !IN REVIEW
itBentornato, {name}!DRAFT
synced 12 s ago · rhodarion pull --format plist
The problem

Your strings live in too many places — and they fight back.

Spreadsheets, scattered JSON files, copy pasted into Slack. Multilingual apps deserve better than hope-driven localization.

CONFLICT (content): de.json

Merge conflicts on every release

Whole-file syncs resurrect deleted keys and overwrite teammates' changes. Rhodarion syncs per namespace with timestamp-based conflict handling — deletes stay deleted.

key not found: home_title

Inconsistent key conventions

Dots here, underscores there, missing texts in production. Rhodarion is separator-agnostic and harmonizes different key structures, so you never run a risky rename migration again.

"Which version is current?"

No single source of truth

When copy lives in five repos, nobody is sure what's live. Rhodarion holds the authoritative state — with full version history and an audit trail of who changed what.

Why Rhodarion

Everything between “new feature” and “shipped in four languages”.

Multi-tenant by design

Manage companies, projects, locales and keys for your whole organization — or your agency's entire client portfolio — in one installation.

Role-based access on two levels

Company-wide and project-specific roles, enforced server-side. Translators translate, testers comment, managers approve — nothing more, nothing less.

Status workflow built in

Every translation moves through draft, review and approval. Release only what's signed off — and always see translation progress per locale at a glance.

Context for translators

Screenshots, comments and discussion threads live right next to each key. Translators see where a string appears — quality goes up, back-and-forth goes down.

Version history & audit trail

Every change is recorded with author and timestamp. Roll back a bad edit in one click and always know exactly how a string evolved.

Translation memory

Rhodarion remembers every translation pair you approve. Reuse consistent wording across projects and keep terminology aligned with a built-in glossary.

Developer experience

Sync from your terminal. Never leave your IDE.

A platform-independent CLI (Composer or standalone .phar) and a token-secured REST API with full OpenAPI documentation connect Rhodarion to any toolchain or CI pipeline.

  • Bidirectional sync — pull approved copy down, push new keys up. Namespace-scoped, so teams never trample each other.
  • Conflict-safe deletes — timestamp-based conflict handling means removed keys can't sneak back into your project.
  • Every format your platforms need — upload and download in the format each codebase expects, or preset it per project with export profiles.
JSON flat & nested PLIST iOS XML Android PHP array flat & nested
# pull approved translations for iOS
$ rhodarion pull --locale de-CH,en,fr --format plist
→ 412 keys · 3 locales · 0 conflicts
Resources/de-CH.lproj/Localizable.strings
Resources/en.lproj/Localizable.strings
Resources/fr.lproj/Localizable.strings

# push new keys from your feature branch
$ rhodarion push --namespace checkout
→ 9 new keys · 2 updated · deletes preserved
Central directory is up to date.
Workflow

From first draft to release-ready — with a clear state at every step.

The status workflow accompanies every translation from creation to approval, so a release never ships half-reviewed copy.

DRAFT

Create

Developers and UI designers add keys and source texts — from the web UI, the CLI or the API.

TRANSLATE

Translate

Translators work with full context: screenshots, comments and translation-memory suggestions.

IN REVIEW

Review

Testers check copy in the actual UI and file feedback directly on the key — no separate bug tracker ping-pong.

APPROVED

Release

Only approved translations reach your build. Progress dashboards show exactly what's ready, per locale.

One tool, five hats

Built for everyone who touches a string.

Product managers

Configure projects and locales, manage users, watch translation progress on visual dashboards.

Translators

Translate with context, comment inline, undo mistakes — without touching a single code file.

Testers

Find the offending text fast and report it right where it lives, attached to the key.

Developers

Sync from the terminal, automate via API, generate tokens — and never resolve a locale-file merge conflict again.

Pricing

Start free. Scale when your app does.

All plans include the web UI, REST API, CLI and unlimited locales.

Starter

CHF 0
forever
  • 1 project
  • 500 translation keys
  • 3 team members
  • CLI & API access
  • Community support
Start free
MOST POPULAR

Team

CHF 49 / month
per workspace, billed yearly
  • 10 projects
  • Unlimited keys
  • 15 team members
  • Status workflow & version history
  • Translation memory & glossary
  • Email support
Start 14-day trial

Business

CHF 149 / month
per workspace, billed yearly
  • Unlimited projects & members
  • Multi-tenant client management
  • Advanced role & permission matrix
  • Audit trail exports
  • Priority support & onboarding
  • Self-hosted option available
Talk to us
FAQ

Good questions, straight answers.

How is Rhodarion different from Tolgee or other TMS tools?

Two things drove us to build Rhodarion: merge conflicts (especially around deleted keys) and rigid key conventions. Rhodarion syncs per namespace with timestamp-based conflict handling so deletes stay deleted, and it's fully separator-agnostic — dots, underscores and mixed conventions coexist without a migration.

Which platforms and formats are supported?

Download and upload in JSON (flat and nested), PHP arrays (flat and nested), PLIST for iOS and XML for Android. The desired format is set per API call, per CLI command, or preconfigured in a project's export profile.

Can I run it in my CI pipeline?

Yes. The CLI is platform-independent (Composer package or standalone .phar) and the token-secured REST API is fully documented with OpenAPI — ideal for automated pulls on build and pushes on merge.

Where is my data hosted?

Rhodarion is developed and hosted in Switzerland. A self-hosted option is available on the Business plan if your compliance requirements demand it.

How do permissions work for external translators?

Roles exist on two levels — company-wide and per project — and are enforced server-side. Invite an external translator into exactly one project with translation rights and nothing else.

Get started

Ship your next release in every language. On time.

Set up your first project in under five minutes. Import your existing language files and let Rhodarion become the single source of truth.

Create your free workspace