Most codebases were never built for localization.

UI text often ends up scattered across components, duplicated across files, and tightly coupled to the interface.

globalize.now scans your repository and converts hardcoded UI strings into a structured i18n architecture automatically.

globalize.now is a CLI that scans your repository and generates a production-ready i18n architecture.

Works with React, Next.js, Vue, and modern frontend frameworks.

Localization breaks because UI text lives inside components. globalize.now extracts those strings and generates a real i18n architecture automatically.

Building with Cursor or Lovable? See our guide for AI-built apps.

Make my app multilingual
Output

Before

<button>Submit order</button>

After

<button>{t("checkout.submit_order")}</button>
locales/
  en.json  fr.json  es.json

How does globalize.now convert hardcoded UI strings to i18n keys?

Works with React, Next.js, Vue, and modern frontend frameworks. Runs as a single CLI command.

~/project
$npx globalize-now

Scanning repository...

1,243 UI strings detected

987 translation keys generated

locale files created

glossary generated

Your app is now ready for localization.

Runs locally on your machine. Your code never leaves your repository.

What the CLI actually changes in your repo

Running globalize-now analyzes your repository and introduces a real localization structure automatically.

components/checkout/button.tsx

Before

Submit order

After

{t("checkout.submit_order")}
locales/en.json
{
  "checkout.submit_order": "Submit order"
}

Running the CLI will:

  • extract UI strings from components
  • generate structured translation keys
  • create locale files
  • rewrite UI strings to use translation keys

Why localization becomes painful in real codebases

Most applications start without internationalization. Over time UI text becomes embedded directly inside components.

By the time localization is needed:

  • UI strings are scattered across hundreds of files
  • duplicated copy appears across the interface
  • translation keys were never designed
  • no locale structure exists

Adding i18n at this stage usually means rewriting large parts of the UI.

What globalize.now generates

Extract UI strings from your codebase

Scan components, routes, and templates for user-facing text.

How does globalize.now generate structured translation keys?

Convert UI strings into namespaced i18n keys.

What locale files does globalize.now generate automatically?

Generate locale JSON files and a shared glossary.

How it works

1

Scan your repository

Analyze the codebase to detect user-facing UI strings.

2

Normalize UI text

Convert UI strings into consistent translation keys.

3

Generate localization files

Create locale JSON files and a shared translation glossary.

Add localization to your codebase without rewriting your UI.

Automatically generate the i18n structure your app needs.

Free for small projects. Paid plans for larger repos and teams.

Make my app multilingual

Choose your workflow

globalize.now works whether your UI is written by AI or built in a traditional codebase.

AI-generated apps

AI tools often hardcode English directly inside UI components.globalize.now extracts those strings and generates a proper i18n structure automatically.

For AI builders

Developer codebases

Legacy apps often embed UI text across hundreds of components and files.globalize.now scans the repository and converts those strings into structured translation keys.

For developers
For developers — globalize.now