The same developer-first toolchain, run at organization scale — SOC 2 Type II, SSO and RBAC, review gates before a translation ships, and versioned rollbacks for the one that already did.
The certifications and controls your audit asks for first, in one ledger.
Trusted by the world’s best companies — Cursor, Ramp, and Profound ship in over thirty languages.
Roles scope people to projects and to locales, sign-on belongs to your identity provider, and every machine surface is keyed and signed.
RBAC with custom roles — a Japanese translator whose permissions cover only Japanese files.
project:writeAdmin · Developertranslations:content:write@jun — ja onlyManage Locadex secretsAdminSSO over SAML and OIDC, keys split by organization and project, webhooks you can verify.
Context Groups hold your glossary and style directives at the organization; every assigned project inherits them, and on overlap the top group wins.
Glossary and directives live at org level and are assigned across projects — Apply pushes a change through existing translations.
The same sentence with and without the group — context, not model roulette.
“Locadex is the GT agent. This product name should never be translated.”
One governed column: glossary, directives and scoped access press down through the review gate and the guarded Locadex PR — what ships below is versioned per locale and one step from rolled back.
Hold a translation from the call site, review it in the workspace, approve it per entry and per locale — then it goes to the edge, and not before.
Source and translation travel together; the gate holds the pair until a reviewer lets it through.
<T $requiresReview> · hash df0269baLabels, one note per locale, and comment threads live on the pair — Spanish can be approved while French is still in review.
Hold a string for approval from the call site — it renders only after review lets it go.
1import { T } from 'gt-next';23export default function Receipt() {4return (5<T $requiresReview $id="checkout.receipt">6Payment received7</T>8);9}
tx(text, { $requiresReview: true })Locadex internationalizes your code and opens pull requests with translations — every change reviewable, on a prefixed branch, and setup is a separate PR you merge yourself.
Red is your bare JSX, green is the same JSX wrapped — merged only after review.
@@ −12,3 +12,5 @@ app/checkout/page.tsx <main> <p>Payment received</p> <T> <p>Payment received</p> </T> </main>Point it at a directory; it runs in a sandbox with your org secrets injected as env vars.
apps/webtargetapps/apiout of scopepackages/uiout of scopeWraps source with t() and the <T> component.
Creates translations in context and commits them.
Re-runs as your source changes, so no locale drifts.
Translations publish to a global CDN as versions, per locale — fixing production is an edit without a redeploy, and rolling back is one step.
Tags come from the CLI, so translation history carries your git metadata — restore any prior state.
A history entry is a source version — inline edits never create one.
A global, low-latency translation CDN — push over-the-air updates without redeploying your app.
Talk to an engineer about implementation, volume, and your security review — or start free and upgrade when you ship.
Support from the engineers who build the product — Slack and phone, not a ticket queue.
Any format or framework, wired into your own pipeline.
Glossaries and directives shared across every project in the organization.
Delivery and support commitments, written into the contract.