The platform half is one sitting: keys and translations in SQLite, a table editor, machine translation with a glossary, and exporting files for the app. Tolgee's signature feature is editing text inside the running app, which means a client library that can tell which key produced which text on screen, and that needs real work for each framework you use. A weekend gets one framework working, and the maintained SDKs, Figma plugin and roles stay out of reach. Since the core is Apache-licensed and ships as a Docker image, self-hosting Tolgee itself is usually the cheaper route.
Before you buildCheck Tolgee Free first: 30,000 hosted words and 3 seats cost nothing. Self-hosting the open-source core removes the word limit entirely.
Build me a translation hub with in-app editing to replace Tolgee Cloud. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves http://localhost:4710: the editor at / and the REST API under /api. - Storage: better-sqlite3 in ./data/hub.db: projects, languages, keys with namespace and tags, translations with a state (empty, machine, translated, reviewed), a history row for every edit, and glossary terms. Project API keys live in .env. - Editor: one row per key and a column per language; filters for untranslated, machine-translated and recently changed; edit inline and mark reviewed. Import and export JSON, XLIFF 1.2 and gettext .po per language. - Machine translation: DeepL (`deepl-node`) or any OpenAI-compatible endpoint from .env, sending the glossary and a project description with every request. Never overwrite a reviewed translation. - Client `hub-client.ts` (ESM, no dependencies besides `intl-messageformat`): `t(key, params)` loads one language from /api/translations/<lang>.json, caches it, formats ICU messages and falls back to the base language. Include a small React hook. - In-context editing, dev mode only: `t()` appends an invisible zero-width code for the key to its text; Alt+click on any text decodes it and opens a dialog that saves through the API and re-renders. - Delivery: after each approved change write ./delivery/<lang>.json atomically, ready for any static host or S3 sync. Add `hub pull` and `hub push` commands that read and write a local locales folder. - Single owner. No accounts, no telemetry. Only machine-translation calls leave the machine. - Out of scope: Figma plugin, branching, tasks, roles, mobile SDKs. - README: wiring the client into a React app, and a warning that attribute text (alt, placeholder, title) can't carry zero-width codes, so those keys are editable only in the table.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Tolgee Cloud.
Add a Tolgee importer to the translation hub in this folder. Requirements: - A command `hub import-tolgee ./export` for the ZIP from the project's Export page, one JSON file per language (nested keys flattened with dots) or XLIFF. - Treat every imported translation as reviewed, keep namespaces if the folder has them, and report keys that exist in some languages only. - Print a dry-run summary (new, changed, identical keys) and write nothing until --apply. - Running it twice must not create duplicates or history noise. - Update the README with the export steps.
Add a CI check to the translation hub in this folder. Requirements:
- A command `hub check --lang de,fr --min 100` that reads the project through the API and exits 1
when any listed language has untranslated or machine-only keys below the given percentage.
- Detect placeholders that differ from the base text ({name}, {{count}}, %s) and ICU plural syntax errors.
- Print a table of failing keys and an optional --json output.
- Provide a GitHub Actions example in the README.Add scoped translator access to the translation hub in this folder. Requirements: - Create a link for one language and one project: a random 32-byte token stored hashed, with an expiry and a revoke button. - The link opens the editor limited to that language with edits saved as suggestions you approve; no export, settings or machine-translation buttons. - Serve guest routes on a second port (GUEST_PORT in .env) so only that port is exposed through a tunnel. - Rate-limit per token and log every edit with the token id. - Update the README.
Developers, designers and translators work in one place: developers wrap strings once, translators click through the live app to see the context, and finished translations reach production without a new release. Unlimited seats at one price and a support team are what separate it from a folder of JSON files.
Estimate · Runs on your machine; static delivery files go to any free static host. Machine translation is the only running cost: DeepL's free API tier or a few cents of LLM tokens per thousand strings. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Free | $0 | $0 | 30,000 hosted words, 3 seats, all standard localization features, automation and machine translation, all integrations (SDKs, Figma plugin, MCP). |
| Translate | $79 | $66 | 50,000 hosted words at the base tier, unlimited seats and projects, 400,000 MT credits, AI translator with brand context, glossaries, AI playground, branching, tasks, granular permissions. |
| Optimise | $179 | $149 | Same included features and MT credits as Translate, plus multiple Content Delivery configurations. |
| Manage | $499 | $416 | Same card features as Optimise, with multiple Content Delivery configurations. |
| Enterprise | custom | — | Premium support, SSO, dedicated Slack channel, account manager, team training, prioritized feature requests, ISO 27001. |
| Self-hosted licence | custom | — | Paid licence for running Tolgee on your own infrastructure with advanced features and support. |
Free covers 30,000 hosted words and 3 seats with all standard features, automation and machine translation; free on request for open-source projects.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Maintained SDKs for many frameworks, and the Figma plugin and mobile SDKs, Branching and review tasks for translators.
About $79 a month on the Translate (50,000 hosted words) plan, $948 a year (checked 2026-10-19).
Maintained SDKs for many frameworks, and the Figma plugin and mobile SDKs; Branching and review tasks for translators; Granular roles so a freelancer sees only their language; Managed content delivery with custom S3 or Azure storage; A tuned AI translator with brand context and a playground. If any of those matter to you, keep paying.
Yes: Tolgee (self-hosted) (open source), Weblate (open source), Traduora (open source).