LocalePack
ChromeFirefoxEdgeOperaSafariListado de CWS
Vue.jsReact
Next.jsi18nextReact Native
Guías para desarrolladoresCasos de éxito
Diseñado específicamente para extensiones de Opera

Localización con IA para extensiones de Opera

Sube tu messages.json de origen, elige los idiomas de destino, paga una sola vez y descarga un ZIP de _locales listo para publicar.

Traducciones seguras para marcadores de posición
Compatible con messages.json de Opera
Precios transparentes
messages.json
Idioma de origen (ejemplo)
{
  "appName": {
    "message": "My Extension",
    "description": "Name"
  },
  "welcomeMsg": {
    "message": "Hello, $USER$!",
    "placeholders": {
      "user": {
        "content": "$1"
      }
    }
  }
}
Alemán (salida)
{
  "appName": {
    "message": "Meine Erweiterung",
    "description": "Name"
  },
  "welcomeMsg": {
    "message": "Hallo, $USER$!",
    "placeholders": {
      "user": {
        "content": "$1"
      }
    }
  }
}
52 locales

Cómo funciona

Tres pasos sencillos para localizar tu extensión de Opera. Las traducciones se ejecutan después del pago: ponemos los trabajos en cola y generamos el ZIP en minutos.

01

Subir

Suelta tu archivo messages.json de origen. Lo analizamos al instante y validamos el formato de extensión de Opera.

02

Selecciona idiomas y consulta el precio

Elige entre 52 idiomas. Consulta precios transparentes basados en el tamaño de tu archivo antes de pagar.

03

Descargar ZIP

Paga una sola vez con Stripe. Generamos todos los archivos _locales/{lang}/messages.json y los agrupamos en un ZIP.

Demo de precios en vivo

Estimador de precios transparente

Mira exactamente cuánto pagarás antes de subirlo. El presupuesto final se calcula después de la subida en función de la longitud de las cadenas y los idiomas seleccionados.

1. Subir archivo

Suelta messages.json aquí

o haz clic para buscar

Solo formato de extensión de Opera. Máx. 500KB.

2. Selecciona idiomas

|

3 de 55 idiomas seleccionados

3. Tu estimación

Idiomas seleccionados3

El precio final se calcula después de subir el archivo en la página de pago

Pago único • Sin suscripción

Hecho para desarrolladores

Diseñado específicamente para el formato de locales de extensión de Opera. No es una herramienta de traducción genérica.

Compatible con el formato de Opera

Creado específicamente para la estructura messages.json de extensión de Opera, con soporte para message, description y placeholders.

Protección de marcadores de posición

Conserva la sintaxis $PLACEHOLDER$ exactamente tal cual. Tus variables se mantienen intactas en todos los idiomas.

Contexto de descripción

Leemos tus campos de descripción y los usamos como pistas de contexto para traducciones con IA más precisas.

Exportación ZIP lista

Descarga un ZIP con la estructura de carpetas correcta _locales/{lang}/messages.json. Añádelo a tu extensión.

Procesamiento en paralelo

Todos los idiomas se traducen simultáneamente. La mayoría de los trabajos se completan en menos de 5 minutos.

Pago único

Sin suscripciones, sin cuotas mensuales. Paga una vez por trabajo y descarga para siempre.

Cómo funciona la i18n de la extensión de Opera

Las extensiones de Opera se basan en la plataforma WebExtension de Chromium — la misma estructura _locales/{locale}/messages.json que Chrome. La API chrome.i18n está disponible en Opera sin modificaciones, y la salida ZIP de LocalePack es compatible de forma directa.

Estructura de carpetas de _locales/
_locales/
├── en/
│   └── messages.json   ← default_locale
├── de/
│   └── messages.json
├── fr/
│   └── messages.json
└── ja/
    └── messages.json
messages.json
{
  "appName": {
    "message": "My Extension",
    "description": "Extension name"
  },
  "greeting": {
    "message": "Hello, $USER$!",
    "placeholders": {
      "user": { "content": "$1" }
    }
  }
}

API en tiempo de ejecución

chrome.i18n

Llamada de ejemplo

chrome.i18n.getMessage("appName")

Requerido en el manifiesto

"default_locale"

Opera está basado en Chromium. Cualquier ZIP de _locales que funcione para Chrome funcionará para Opera tal cual.

La tienda de Opera Addons atiende a usuarios en muchos idiomas. Una carpeta _locales/ completa mejora significativamente la visibilidad para usuarios que no hablan inglés.

Aprende el formato i18n de Chromium →

Opera runs the Chromium extension stack

Opera extensions are built on the same Chromium WebExtension platform, so the localization work transfers directly.

Drop-in Chrome compatibility
Opera uses the same _locales/{locale}/messages.json structure. The chrome.i18n API is available without modification and LocalePack's ZIP is drop-in compatible.
Chromium locale resolution
Opera resolves locales the Chromium way, so underscore-separated folder names and the supported-code list behave identically to Chrome.
Reuse one localization pass
If you already ship a localized Chrome extension, the same _locales/ folder covers Opera — there is no second translation pass to run.
A smaller store, less competition
Opera Add-ons serves a large non-English user base, and comparatively few extensions there ship complete _locales/ folders.

The same silent-ignore behaviour applies: a locale folder Chromium does not recognise is skipped without any warning.

¿Por qué no usar simplemente herramientas genéricas?

Las herramientas de traducción de propósito general no entienden el formato de extensión de Opera.

LocalePack
Traducción manual
TMS genérico
Tiempo de configuración2 minutosHoras por idioma30+ minutos
Transparencia de costes
Seguridad del formato de Opera
Protección de marcadores de posición
Velocidad (52 idiomas)< 5 minSemanasHoras
Ideal paraextensiones de OperaProyectos pequeñosAplicaciones web empresariales

Casos de éxito

Proyectos reales que usaron LocalePack para llegar a una audiencia global en hasta 52 idiomas.

AstrologerAI AI astrology app localized into 52 languages

AstrologerAI: an AI astrology app localized into 52 languages

How the AstrologerAI app translated its entire experience into 52 languages with LocalePack — 6.3M tokens for $58.73 — to reach a worldwide audience in their own language.

DevToys.pro developer tools web app localized into 52 languages

DevToys.pro: 400% international traffic growth across 52 languages

How the DevToys.pro web app translated its entire UI into 52 languages with LocalePack — 5.8M tokens for $58.44 — and quadrupled its international organic traffic.

DevToys New Tab Chrome extension localized into 52 languages

DevToys New Tab: a Chrome extension localized UI + store listing in 52 languages

How the DevToys New Tab Chrome extension localized both its in-extension UI and its Chrome Web Store listing into 52 languages to reach a global audience.

The LocalePack site localized into 52 languages with LocalePack

LocalePack localized itself into 52 languages — with LocalePack

We used our own tool to translate the entire LocalePack site into 52 languages — 2.9M tokens for $27.37 — so developers worldwide find us in their own language.

Ver todos los casos de éxito

Con la confianza de desarrolladores de extensiones

“Me ahorró horas de trabajo tedioso. Subí mi messages.json y recibí traducciones perfectas en el formato exacto que necesitaba.”

Sarah K.

Desarrolladora indie, extensión AdBlock

“Por fin una herramienta que entiende el formato de las extensiones de Opera. Se acabó tener que arreglar marcadores de posición rotos después de traducir.”

Marcus T.

Mantenedor de extensiones

“La transparencia en los precios fue lo que me convenció. Sabía exactamente cuánto pagaría antes de subir nada.”

Dev J.

Colaborador de código abierto

52

Configuraciones regionales compatibles

100%

Salida segura para marcadores de posición

ZIP

Listo para publicar

Preguntas frecuentes

Todo lo que necesitas saber sobre LocalePack.

Related developer guides

Deep dives on the formats, APIs and errors behind this page — written for developers, not translators.

Chrome extension i18n: _locales structure and default_locale

How to set up the _locales folder, what default_locale does in manifest.json, and how Chrome picks the right messages.json at runtime.

messages.json format explained (with placeholders)

A complete reference for the WebExtension messages.json format: the message, description, and placeholders fields, $PLACEHOLDER$ syntax, $1 positional substitutions, and common mistakes.

Chrome extension locale codes: all 55

Every locale code Chrome accepts as a _locales folder name, with language and native names, the underscore-vs-hyphen trap that makes pt-BR silently ignored, and how Chrome picks a locale at runtime.

default_locale: rules and common errors

Why default_locale is required when _locales exists, what happens when you omit it, and how to fix the most common manifest validation errors.

Browse all guides →

¿Listo para lanzar tu extensión de Opera a nivel global?

Paga una vez - Descarga el ZIP - Lanza a nivel global

Probar LocalePack
LocalePack
GuíasPrivacidadTérminosSoporte

© 2025 LocalePack. Todos los derechos reservados.

Este proyecto se tradujo con LocalePack logoLocalePack