Your keys, your bill
Bring your own Anthropic or Gemini credentials. They are encrypted at rest and write-only — nobody, including an admin, can read one back out.
Push source strings from CI, machine-translate them with your own model keys, review the results in the browser, and stop a release that would ship untranslated text.
Bring your own model key · Self-hosted · Apple, Android and ICU formats
$ loc init Finds your .strings, .xcstrings, .stringsdict and strings.xml files and writes localization.yml.$ loc push Uploads the source locale. New keys, changed keys and removals are diffed server-side.$ loc translate --locale hi Machine-translates what is missing using your own Anthropic or Gemini key.$ loc pull Writes approved translations back into the repository, ready to commit.Bring your own Anthropic or Gemini credentials. They are encrypted at rest and write-only — nobody, including an admin, can read one back out.
Placeholder parity, plural completeness and glossary adherence run on every string. A translation that drops a %@ never reaches a build.
Change an English string and every translation made against the old text is marked stale automatically — the case a parity test cannot see.
Advisory on pull requests, blocking at release. A build cannot ship with missing or stale strings.
Apple .strings and .stringsdict, Android XML and ICU JSON — parsed, not regex-matched, and written back in the same shape.
Every action in the console is a documented REST endpoint with an OpenAPI schema. The CLI is just a client.
Point the CLI at your source file and push. Nothing is translated until you ask for it, and nothing is written back until a human approves it.
Create an account