BabelizeBabelize

Changelog

Babelize release notes by version and date: new features, improvements and bug fixes across the platform, with the newest release first.

Welcome to the Babelize changelog. Here you'll find a record of what's new, what's improved, and what's fixed.

[v2.3.1] - 2026-11-02

Translate your documentation: babelize translate now handles Markdown and MDX pages as well as app strings. Babelize-hosted translation is about 3× faster and no longer drops sentences, and a long list of fixes came from translating our own component library site with Babelize.

New

  • Markdown & MDX docs. Add "docs": { "include": ["content/docs/**"] } to .babelize/config.json and babelize translate writes a translated copy of each page (install.es.mdx).

    • Only the text readers see is translated: frontmatter titles, headings, paragraphs, lists, tables and readable JSX props. Code, imports, {expressions}, JSX tags and URLs are left exactly as written.
    • Links, bold and inline code are checked after translation. A paragraph that loses them keeps its English text and is retried on the next run.
    • Fumadocs layouts (page.ja.mdx or ja/page.mdx), with meta.json sidebars translated.
    • Translated headings keep the English heading's id, so #anchor links still work.
    • .babelize/local/docs-lock.json records each paragraph, so editing a sentence re-translates only that paragraph.
    • Pages are formatted with your project's Prettier or Biome.
    • --docs-only translates just the docs. The MCP server's babelize_translate does docs too.

    See Markdown & MDX Docs

  • Choose which files are translated. include and exclude in .babelize/config.json, or --include / --exclude, so a component library published from the same repository can be left alone. See Choosing which files are translated

  • A URL per language in Next.js. The generated proxy serves /ja/… in Japanese, adds <html lang dir> and hreflang, and falls back to English for strings that aren't translated yet.

    • "routing": "cookie" keeps one URL for every language.
    • "routing": { "sourceOnly": ["/docs"] } keeps sections in the source language.

Improved

  • Babelize-hosted translation is about 3× faster:
    • a short string takes about 4 s instead of 10 s;
    • a paragraph takes about 8 s instead of 24 s;
    • long text is split into smaller requests, so batches of docs paragraphs no longer time out.
  • Text that shouldn't be translated stays as written:
    • option values your code compares against ("rtl", union members, component props);
    • language names in their own language ("Deutsch", "日本語");
    • text inside <pre>, <code> and <kbd>;
    • language-code badges (en, FR);
    • samples in a script your source language doesn't use, such as an Arabic preview in an English app.
  • Installing the CLI shows no deprecation warnings
  • babelize auth status works as an alias, and --provider babelize explains how to sign in when you aren't

Bug Fixes

  • Babelize-hosted translation sometimes returned only the first sentence of a paragraph
  • Hosted translation answered 503 for whole batches of long text
  • Signed-in CLI sessions couldn't refresh (403 CSRF_TOKEN_MISSING)
  • Translations sometimes left placeholder fragments such as {#0} in the text
  • Re-runs failed on label maps keyed by identifiers

Packages

  • babelize 1.0.18
  • @babelize/cli 1.3.17
  • @babelize/mcp 1.3.14
  • @babelize/engine 0.3.15

[v2.3.0] - 2026-10-18

A simpler Babelize: connect GitHub once and pick a repo, get pull requests that stay up to date on every push, check and fix translations in the app before they reach your repository, and translate any project from the terminal with npx babelize.

New

  • npx babelize: one command in your project's folder. Run it with no flags, no config and no API key:

    • checks the folder is a git repository (and offers to create one);
    • detects your framework and the language your app is written in;
    • signs you in with your browser;
    • lets you pick languages, then writes the locale files and i18n setup for you to review with git diff.

    Translation uses your plan's credits, and the summary shows how many were used. See CLI

  • One GitHub connection. The Babelize GitHub App now does both repository access and pull requests, so there is one permission screen. Signing in with GitHub no longer asks for access to your repositories

  • Import a repository in three steps: Import → Configure → Review.

    • Import: pick an account or organization, search your repositories, or paste a public URL or upload a ZIP.
    • Configure: the framework, i18n library, existing languages and source language are detected for you; choose the branch here.
    • Review: check the cost and create the project; start the first babel from the project page when you're ready.

    The wizard saves drafts you can come back to (up to 10, kept for 30 days)

  • Auto-localize on push (Growth and Studio). Pushes to your tracked branch are translated automatically, a few minutes after your last push, into one pull request on babelize/<branch> that stays up to date.

    • Set the wait time and a monthly credit limit per project.
    • It pauses and lets you know when the limit is reached or credits run out.
    • Only real source changes trigger it. Bot commits and locale-only pushes are ignored
  • Results in the app. A finished babel opens on its results:

    • Translations: every text by language, with search and filters.
    • Changed files: before and after, in unified or side-by-side view.
    • Issues: strings that failed or need review.
    • Add to glossary from any translation.
  • Edit translations. Editors and admins can change a translation in place. The edit goes into the pending pull request and the download right away, is saved to translation memory, and is kept on later babels until the source text changes. See Results

  • Pull requests that explain themselves. Each pull request has a table of languages, how to try the change, and a merge checklist

  • Credit emails. You get an email when you've used 80% and 100% of your credits, and a weekly summary on Mondays (turn it off in Settings)

Improved

  • Simpler navigation. The sidebar has Home, Projects, Babels, Plan & usage, Settings and Help:
    • Archived projects are a tab on Projects.
    • Usage and Billing are one page, Plan & usage.
    • Profile and API keys are tabs in Settings.
  • Home shows what needs attention, a getting-started checklist, this month's activity, credits by project, and language coverage for each project
  • Plan & usage has:
    • your credits as a meter, with a forecast for the period;
    • usage over 7, 30 or 90 days, by project (including CLI and SDK translation);
    • API requests per key;
    • your subscription and payments.
  • Credits first. The Automatic engine uses your Babelize credits, and switches to your own AI provider key only when credits run out. Your own key moved to project settings → Advanced
  • Branches. Pick the branch when you import a repository, or change it later in project settings
  • Faster dashboard. Pages switch without reloading the sidebar, return visits show your last data instantly, and charts load after the page
  • Consistent plurals. On the cloud translator, every form of a plural message (for example "1 item" and "25 items") is now translated together, so all forms use the same words and the same formal or informal tone. Languages with more plural forms, such as Polish and Russian, translate each form separately so the word endings are correct
  • New look. The Babelize brand green throughout, clearer warning and error colours, loading placeholders and empty states on every page, and a redesigned Help page
  • Keyboard shortcuts are now ⌘K or / to search, N for a new project, ? for the list, and Esc
  • Babel progress. Steps show one row per stage with plain-language detail (the language being translated, not internal batches) and an estimate of the time left, on the babel page and in the corner banner
  • Several babels at once. Babels on different projects each get their own card in the corner, with progress and Cancel. Starting a babel on a project that already has one running links to it
  • Security and privacy contacts. Report vulnerabilities to security@babelize.co and send data requests to privacy@babelize.co. The security docs now explain when Babelize uses your GitHub sign-in token

Bug Fixes

  • CLI sign-in in production. Signing in from the CLI failed with "Invalid or expired code"
  • Local translation while signed in. Translation failed with an error when no API key was set
  • Credits for CLI translation. Small batches were each rounded up to a whole credit, and retries were charged again. You now pay the exact amount, and a retry within 15 minutes is free
  • French plurals. When the translator wrote "un article" for 1, the message fell back to plain text; it now becomes a proper plural
  • "Set password" for accounts that already had one. Settings showed it for passwords set through the reset email, and changing such a password didn't ask for the current one
  • Results in production. Runs didn't store their translations, so the app couldn't show them
  • Pull request updates. Updating a pull request that had your own commits, after its base branch moved, could leave it with conflicts
  • Project settings. Some newer fields (such as the source language) weren't saved
  • Brand voice on Starter. The lock said brand voice needed Growth; it is part of Starter, Growth and Studio. The API now checks the plan too
  • CLI. Removed babelize auth login --gitlab, which never worked. Use GitHub, Google or email
  • MCP server. --help now lists every tool, including babelize_run_and_wait
  • Side-by-side changes. Each side scrolls on its own, so long lines no longer push the other side out of view
  • Project settings dialog. Long text no longer cuts off its right edge; Cancel discards your edits; projects written in a language other than English show the right source language
  • Out of credits while other babels run. The message now says how many credits running babels are holding until they finish
  • Link previews. app.babelize.co, docs.babelize.co and every www.babelize.co page now show a preview image when shared

Packages

  • babelize 1.0.4: new; npx babelize runs the CLI
  • @babelize/cli 1.3.3
  • @babelize/mcp 1.3.1
  • @babelize/engine 0.3.2

[v2.2.0] - 2026-10-16

React Native and Expo apps can be translated (beta), pull requests change only the lines that need to change, and lists your code also uses as data are translated where they're shown.

New

  • React Native and Expo (beta) — Expo Router, classic Expo and bare React Native apps are translated end to end: translations are bundled into the app, the device language picks the locale (expo-localization or react-native-localize), your entry point imports the i18n setup, and screen titles, Alert text and accessibility labels are translated. See React Native & Expo
  • Babelize SDK in React Native — @babelize/sdk runs in React Native with a detectLocale option, and the new @babelize/metro plugin writes the translations before Metro bundles. See React Native & Expo in the SDK docs
  • Monorepos — when the repository root isn't an app, the app package (for example apps/mobile) is translated, not the root
  • Organizations that restrict third-party apps — when your GitHub organization blocks the Babelize app or requires single sign-on, adding the repository explains why and links to installing the Babelize GitHub App or requesting approval. With the App installed, Babelize reads the repository once GitHub confirms your account can
  • Re-translate everything — schedule it in project settings, or turn it on in the Run dialog: the next run translates every string again instead of reusing earlier translations (and uses credits for all of them)
  • Redesigned project settings — sections for general settings, languages and the translation engine, language chips, an explicit Automatic engine option, a live preview of date, price and number formats, and Save enabled only when something changed

Improved

  • Static HTML/CSS/JS sites are generally supported — no longer in beta. Vue and React Native remain in beta
  • Pull requests change only what they need to — only lines with translated text change, plus the translation hook and import. Formatting, line endings and indentation stay as you wrote them, and a re-run changes nothing
  • Lists that are also data — a list shown as chips or options and also saved or sent to your API (NICHES, plan sizes) stays as you wrote it: a map from each value to its translation key is added next to it, and only what's displayed is translated
  • Plurals from your code — {count} item{count === 1 ? '' : 's'} becomes one plural message, translated form by form, instead of a word with an English "s"
  • Clearer messages for translators — placeholders are named after what they show ({dealEndsAt} rather than {0}), and the cloud translator keeps line breaks

Bug Fixes

  • Data is no longer translated — colors, roles, statuses, icon names, storage folders, object keys, TypeScript types, ISO dates and codes such as GST numbers were sometimes treated as text, which could break styling or send translated values to your API
  • Line breaks — \n in a template string is a real line break in the message, not a backslash and an n
  • Static sites: pages in subfolders — pages such as blog/post.html now load ../i18n.js, so they translate like the home page. Re-running repoints pages from earlier runs
  • Static sites: page titles and descriptions — <title> and the description, Open Graph and Twitter <meta> tags are translated too
  • Static sites: language list — the generated i18n.js lists your source and target languages, so the switcher and the fallback to the source language work

[v2.1.0] - 2026-10-12

A large release: translate locally without an account, cancel runs, import and export translation memory, manage your subscription yourself, and Django out of beta. It also closes a full audit of billing, projects, runs, accounts and storage.

New

  • babelize translate — local translation — translate a project straight into your working tree from the CLI, with no Babelize account. Pair it with --report for a QA report file and --allow-partial when a few strings may fail
  • babelize check for CI — fails the build when locale files are missing keys or a translation broke a placeholder
  • MCP workflow tools — babelize_analyze, babelize_check, babelize_translate and babelize_review let Claude Code, Cursor and Codex localize a project locally. See MCP server
  • Cancel a run — stop a queued or running run from the dashboard or with babelize babels cancel <id>. You're only charged for strings it had already translated
  • Run history — filter by status and trigger, search across several projects, page through every run, and see who started each one. Run details show logs in order and only that run's warnings
  • Translation memory import and export — export as TMX or CSV, and import a CSV in merge mode (adds and updates entries) or replace mode (replaces this project's entries). Invalid rows are skipped and listed with their row number
  • Manage your subscription — the billing page shows when your plan renews, lets you cancel at the end of the period or resume, and opens Dodo's portal for your payment method and invoices
  • Replace a ZIP project's source — upload a new archive for an existing ZIP project
  • Django is generally supported — no longer in beta, verified end to end and listed next to React and Next.js. Vue and static HTML remain in beta. Limitations are on the Django page
  • JSX sentences as one message — text, values and inline elements such as links in one sentence become a single translatable string, so translations can reorder words naturally
  • Plural messages with the cloud translator — ICU plural and select messages are translated branch by branch
  • Translation problems per run — each run lists strings that failed or need review, and failed strings are retried on the next run
  • Live project chat — comments and replies update in real time

Improved

  • Translation quality — a curated UI dictionary (now including Polish) for common interface words, the source language is passed to the translator, and placeholders are protected so they come back intact
  • Glossary — terms are enforced without touching placeholders or URLs, CSV import can merge, and glossary commands are available in the CLI and MCP server
  • Unsupported frameworks are refused up front — a Laravel, Rails, Flutter or Angular project is turned away with the framework named, instead of failing on the first run
  • Python package managers — pip, Poetry, Pipenv, uv and PDM are shown on the project page

Bug Fixes

  • Downloads keep every translation — after a re-run that reused earlier translations, the downloaded locale files could contain only that run's new strings
  • Generated files are left alone — a re-run could rewrite Babelize's own i18n config and break the app
  • Navigation links stay separate — a row of links (Shop, Cart, Contact) was grouped into one string and could fail to translate
  • One failing string no longer fails a run — a re-run whose only new string failed was marked Failed, even though everything else was ready
  • Pull requests include every change — PRs now carry every file the run changed and are built on the commit the run started from. Update PR reflects the PR's real languages
  • Runs can't get stuck — one live run per project, a real time limit, and every failure ends the run cleanly. A failed re-run keeps your last good output
  • Deleted projects stay deleted — they disappear everywhere and are removed for good after 30 days. Archived projects are read-only, and restoring checks the owner's plan
  • Project files — each project's files now live in one folder; downloads are written safely, and cleanup never deletes translation history
  • Removing a language — failed with a server error
  • Team invites on paid plans — owners who had changed plan could be told their plan only allowed the owner
  • Email sign-in — showed your email instead of your name and avatar
  • Notifications — mark all as read keeps the list, the unread badge is accurate, and links go to the right place
  • Billing — repeated payment webhooks are handled once, refunds and disputes appear in your history, credit reservations settle exactly once, and plans granted to an account show their end date

Security

  • Billing data — billing tables and credit functions can only be changed by the server
  • Connected accounts — GitHub and Google tokens are encrypted at rest; your own AI provider keys are no longer cached outside the database
  • Accounts — deleting your account cancels billing and revokes sessions and API keys, with a 30-day window to restore it. Shared projects pass to a teammate instead of being left without an owner
  • Profiles and teams — closed gaps that let someone read another user's profile, take over an email address, or promote themselves to project owner

Changes worth knowing

  • Billing counts translations produced — runs are charged for strings actually translated, not for every string found. Cancelled or timed-out runs are charged for what they translated before stopping
  • Re-run once before your next pull request — project files moved to a new layout, so run each project once before raising a PR
  • Some older ZIP projects need a re-upload — if a run reports that the project's archive is missing, use Replace source
  • Locale and currency preferences are hidden until they apply across the app
  • Packages — @babelize/cli 1.1.3, @babelize/engine 0.1.2 and @babelize/types 0.1.2. The CLI now respects a saved API URL, prints clean JSON with --json, fails clearly in non-interactive mode, and uses consistent exit codes
  • License — the repository and published packages are Apache-2.0

[v2.0.7] - 2026-09-29

A bug fix release. The headline is sign-in: signing in with GitHub, Google or GitLab had stopped working.

Bug Fixes

  • OAuth sign-in repaired — signing in with GitHub, Google or GitLab landed back on the sign-in page with ?expired=true. The session is issued as a cookie, and the dashboard's proxy for the OAuth callback was dropping that cookie before it reached the browser, so the sign-in completed and then immediately had nothing to show for it. Email and password sign-in was never affected
  • Onboarding no longer redirects — finishing or skipping the welcome dialog left you on the import wizard rather than the dashboard you were already looking at

Changes worth knowing

  • Refreshed onboarding — the welcome dialog is a two-column layout now, and it stays out of your way: finishing it returns you to the dashboard
  • Theme-aware favicon — the tab icon follows your browser's light or dark theme
  • Shared brand assets — the logos live in one place in the repo instead of a copy per app

[v2.0.6] - 2026-09-23

A bug fix release. No new features — this one is security hardening and correctness, following a full audit of the platform.

Bug Fixes

  • Admin pages restored — several admin screens (user roles, subscription languages, role management) returned "Forbidden" to genuine admins. The permission check behind them queried a column that does not exist, so it answered "not an admin" for everyone. Those endpoints work now
  • Account data showing as missing — accounts created with email and later linked to Google or GitHub ended up with two identities, and projects, subscriptions and billing history could appear missing. Affected accounts are reconciled and the cause is fixed, so it cannot recur
  • Notifications update live — the notification bell captured your runs once at page load and never refreshed, so runs finishing later never appeared. It now reflects current activity
  • Real-time updates after reconnect — when the live connection dropped, project and run updates would silently stop resubscribing. They now resume correctly
  • No more dashboard flash — protected pages are checked before rendering, so signed-out visitors are redirected instead of briefly seeing the app shell
  • Uploads — a crafted ZIP could write files outside its workspace during extraction. Archive handling is now bounded to the project workspace
  • Payment webhooks — a duplicate webhook route could never verify its signature. Both provider URLs now reach the verified handler
  • Translation memory and billing history are paginated instead of loading every row at once

Security

  • Live updates — the real-time connection accepted a token without verifying its signature, meaning a forged token could subscribe to another account's runs. Signature verification is now mandatory
  • Project insights — insights for any project could be read by any signed-in user who knew its ID. Now restricted to project members
  • Request protection — CSRF tokens are signed by the server, so a token we did not issue is rejected. The protection can no longer be disabled in production by configuration
  • Access tokens — no longer stored in browser storage, where any script on the page could read them
  • Database access rules — row level security added to the last three unprotected tables, including the one that records who is an admin. Internal fallbacks that could bypass these rules have been removed
  • Rate limiting — could be bypassed by rotating a request header; limits now derive from the real client address and fail closed when quota state is unknown

Changes worth knowing

  • Runtime SDK translation now consumes AI credits. POST /v1/translate was previously unmetered. If you use @babelize/sdk for runtime translation, it now draws on your credit balance like any other translation
  • One run per project at a time. Starting a run while another is in progress returns 409 RUN_IN_PROGRESS instead of both runs corrupting each other's workspace
  • Paginated responses. Translation memory and billing history now accept ?page= and ?limit= (default page=1; default limit is 100 for translation memory and 50 for billing history). Clients that expected every row in one response should page
  • Next.js 16 — @babelize/sdk and @babelize/next now declare support for Next 16

[v2.0.5] - 2026-08-26

Features

  • Single-package SDK — React and Next.js bindings are now subpath exports of @babelize/sdk (@babelize/sdk/react, @babelize/sdk/next). One install for React, Next, or vanilla apps. @babelize/sdk-react and @babelize/sdk-next are deprecated in favor of the subpaths
  • ICU MessageFormat — babelize.icu() translates ICU messages (plural, select, selectordinal, nested) while preserving structure, placeholders, # pound, and number/date/time formatters. Exposed on useBabelize() in React. See the ICU guide
  • Full CLDR plural forms — babelize.p() now requests all six CLDR forms (zero/one/two/few/many/other), so Polish, Arabic, and Russian get correct few/many/zero/two translations instead of falling back to the generic plural. The Next.js build plugin now extracts plurals too
  • CLI CI safety — the CLI is now pipeline-safe: cancelled prompts exit 128 (never 0), a global --yes/--non-interactive flag plus CI auto-detection prevents prompts from hanging, --password is a registered auth login/signup option, and run status --watch --json emits final JSON. See CI/CD
  • Shared scanner — new @babelize/scanner package shared by the Vite and Next build plugins (no more extraction drift between them)

Bug Fixes

  • Extraction reliability — identical JSX labels at different lines are all extracted (dedup by location, not text); Vue templates handle multiline text and normalize {{ var }} → {var}; HTML data-i18n is honored on any ancestor; CLI and MCP scan tools are drift-guarded to stay identical
  • NLLB output artifacts — FLORES language tokens (eng_Latn) and the unknown-token marker ⁇ (U+2047) are stripped at both the Rust translator and the backend safety net, so translated output is clean
  • API key docs — corrected api-keys CLI docs to match the real commands (api-keys babelize create <name>)

[v2.0.4] - 2026-07-28

Features

  • Persistent Downloads — Translation ZIP files now stay accessible in your dashboard until you delete them (auto-cleaned after 30 days)

Bug Fixes

  • Translation Quality — Fixed edge cases where some strings weren't extracted or translated correctly, giving you consistent results across all frameworks
  • Download Reliability — Fixed PDF and binary file downloads through the proxy, especially for private GitHub repositories
  • Login & Permissions — Fixed session conflicts when switching between multiple accounts, and resolved 403 errors that could incorrectly block access to your projects
  • Dashboard Stability — Fixed 404 and 403 errors on project and subscription pages, profile display issues, and cases where failure messages weren't showing properly
  • API Proxy & Routing — Fixed WebSocket connections and provider token validation to work reliably on Railway deployments
  • Code Quality — Over 200 code health improvements under the hood for a faster, more stable Babelize

[v2.0.3] - 2026-07-17

Features

  • Vue.js Support — Babelize now works with Vue Single File Components (.vue files), including automatic extraction, injection, and vue-i18n setup
  • Date & Currency Localization — Intl-based formatting for dates, currencies, and numbers is now detected and localised automatically
  • More MCP & CLI Tools — 23 new MCP tools and 4 new CLI commands for deeper IDE and terminal integration
  • API Key Limits — Set usage limits on API keys with real-time tracking in the dashboard

Bug Fixes

  • Translator Reliability — 16+ fixes for translation quality including wrong-language detection, fallback to HuggingFace when needed, and prevention of gibberish translations
  • CLI Authentication — Fixed login hanging on macOS, token refresh issues, and added a timeout guard so you never get stuck
  • Dashboard Fixes — Fixed API usage not tracking, API keys not showing, project access checks, OAuth errors, and several other dashboard quirks
  • Performance — Translations now run faster with batch processing and configurable threading for the translation engine

[v2.0.2] - 2026-07-01

Features

  • Static Site Support — Translate HTML, CSS, and JavaScript projects through the same Babelize engine
  • ZIP Upload — Upload entire projects as ZIP files instead of importing files one by one
  • Email Overhaul — Redesigned email notifications that reliably deliver translation completions, invitations, and account alerts
  • Admin Monitoring — New dashboard for real-time system health, user activity, and performance insights

Bug Fixes

  • Translator Stability — Fixed six critical issues that could crash the translation server
  • OAuth & Login — Fixed token expiry, refresh loops, and cascading failures in the API key auth system
  • Dashboard Consistency — Fixed missing provider icons, stale sync buttons, and theme flickering
  • Onboarding Flow — Smoother signup with deduplicated API calls and corrected chart colors

[v2.0.1] - 2026-06-27

Features

  • Notifications — Real-time notifications for translation completions, repo updates, and system alerts
  • API Usage Graphs — New dashboard charts showing your API request consumption
  • Admin Panel — Enhanced admin dashboard with user management and role controls
  • Project Archiving — Archive old projects to keep your workspace clean
  • GitHub PR Creation — CLI can now create pull requests directly from translation runs
  • Billing Integration — Dodo Payments support with yearly subscription options
  • User Settings — New settings page with security, preferences, and API key management

Bug Fixes

  • Double Header UI — Fixed layout duplication causing nested headers across the dashboard
  • Security — Fixed IDOR vulnerability, CSRF in API key generation, and resolved 107 dependency vulnerabilities
  • Translator Engine — Fixed NLLB engine crashes and tokenizer misconfiguration
  • CLI — Fixed OAuth callback routing and auth flow reliability
  • Glossary — Fixed type duplication, pagination, and CSV import bugs
  • Docs — Fixed redirect links and stale documentation references

[v2.0.0] - 2026-05-15

Features

  • MCP Server — Released @babelize/mcp so Cursor, Claude Desktop, and opencode can scan, translate, and query projects directly from your IDE
  • Glossary — Define "Never Translate" and "Always Translate As" terms with CSV import/export
  • Translation Memory — Reuse approved translations across runs for consistency and lower costs
  • Brand Voice — Configure a custom brand voice for translations that match your tone
  • RTL Support — Full support for right-to-left languages including Arabic
  • Pricing Overhaul — New plans (Free, Starter, Growth, Studio) with expanded credits
  • BYOK — Bring your own API key to skip credit consumption entirely
  • Notifications — Real-time system-wide notifications for syncs, updates, and engine status

Bug Fixes

  • Fixed silent failures when closing the translation dialog
  • Fixed checkout flow using hardcoded IDs instead of database-driven plan IDs
  • Fixed null pointer crashes across multiple controllers
  • Fixed RLS bypass vulnerabilities with scoped database clients
  • Fixed WebSocket stale connections
  • Fixed rate limiter and circuit breaker edge cases
  • Fixed subscription expiry worker and invitation bugs
  • Stabilized CI test failures caused by test isolation issues

[v1.3.0] - 2026-02-25

  • Project Translation Sync — Automatic synchronisation to keep translations up to date across runs, no more manual reconciliation

[v1.2.0] - 2026-02-22

  • Self-Service Billing — Upgrade your plan and manage subscriptions within the dashboard via Razorpay
  • Performance — Translation engine up to 40% faster for large repositories
  • UI Refinements — Consistent spacing, alignment, and iconography across the dashboard

[v1.1.0] - 2026-02-15

  • Two-Factor Authentication — Mandatory 2FA for all accounts
  • GitHub OAuth — Streamlined login with fewer redirects

[v1.0.0] - 2026-02-01

Official Launch

Babelize launches to general availability — a production-grade localisation platform for modern development teams.

  • 50+ Languages — AI-powered translation with configurable quality tiers
  • GitHub Integration — Automatic syncing, PR creation, and webhook-driven workflows
  • Resource Bundles — Export translations as structured .json locale files, one per language
  • Team Collaboration — Role-based access controls, shared projects, and user management

Last updated: 2026-11-01

How is this guide?

On this page