LocalePack
كرومفايرفوكسإيدجأوبراسفاريإدراج CWS
Vue.jsReact
Next.jsi18nextReact Native
أدلة المطورينقصص نجاح
مصمّم خصيصًا لإضافات Chrome

توطين بالذكاء الاصطناعي لـ إضافات Chrome

ارفع ملف messages.json المصدر، واختر اللغات المستهدفة، وادفع مرة واحدة، ثم نزّل ملف ZIP جاهزًا للشحن لمجلدات _locales.

ترجمات آمنة مع العناصر النائبة
متوافق مع messages.json في Chrome
تسعير شفاف
messages.json
لغة المصدر (مثال)
{
  "appName": {
    "message": "My Extension",
    "description": "Name"
  },
  "welcomeMsg": {
    "message": "Hello, $USER$!",
    "placeholders": {
      "user": {
        "content": "$1"
      }
    }
  }
}
الألمانية (الناتج)
{
  "appName": {
    "message": "Meine Erweiterung",
    "description": "Name"
  },
  "welcomeMsg": {
    "message": "Hallo, $USER$!",
    "placeholders": {
      "user": {
        "content": "$1"
      }
    }
  }
}
52 locales

كيف يعمل

ثلاث خطوات بسيطة لتوطين إضافة كروم. تبدأ الترجمات بعد الدفع—نضع المهام في قائمة انتظار ونُنشئ ملف ZIP خلال دقائق.

01

رفع

أفلت ملف messages.json المصدر. نقوم بتحليله فورًا ونتحقق من تنسيق إضافة كروم.

02

اختر اللغات واطّلع على السعر

اختر من بين 52 لغة. اطّلع على تسعير شفاف بناءً على حجم ملفك قبل الدفع.

03

تنزيل ZIP

ادفع مرة واحدة عبر Stripe. نُنشئ جميع ملفات _locales/{lang}/messages.json ونجمعها في ملف ZIP.

عرض تسعير مباشر

مُقدِّر تسعير شفاف

اطّلع بدقة على ما ستدفعه قبل الرفع. يتم احتساب العرض النهائي بعد الرفع بناءً على طول السلاسل واللغات المحددة.

1. رفع الملف

أفلت messages.json هنا

أو انقر للتصفح

تنسيق إضافة Chrome فقط. الحد الأقصى 500KB.

2. اختر اللغات

|

تم اختيار 3 من أصل 55 لغة

3. تقديرك

اللغات المحددة3

يتم احتساب السعر النهائي بعد رفع الملف في صفحة إتمام الدفع

دفعة لمرة واحدة • بدون اشتراك

مصمم للمطورين

مصمم خصيصًا لتنسيق اللغة المحلية الخاص بـ إضافة كروم. ليس أداة ترجمة عامة.

متوافق مع تنسيق Chrome

مبني خصيصًا لبنية messages.json الخاصة بـ إضافة كروم مع دعم message وdescription وplaceholders.

حماية العناصر النائبة

يحافظ على صياغة $PLACEHOLDER$ كما هي تمامًا. تبقى متغيراتك سليمة عبر جميع اللغات.

سياق الوصف

نقرأ حقول الوصف لديك ونستخدمها كتلميحات سياقية لترجمات ذكاء اصطناعي أدق.

تصدير ZIP جاهز

نزّل ملف ZIP ببنية المجلدات الصحيحة _locales/{lang}/messages.json. ثم أضِفه إلى إضافتك.

معالجة متوازية

تُترجم جميع اللغات في الوقت نفسه. تكتمل معظم المهام في أقل من 5 دقائق.

دفعة لمرة واحدة

لا اشتراكات ولا رسوم شهرية. ادفع مرة واحدة لكل مهمة، وحمّل إلى الأبد.

كيف تعمل i18n لإضافة Chrome

تُعرّف إضافات Chrome الحقل "default_locale" في manifest.json لتفعيل i18n. ثم يقرأ المتصفح سلاسل اللغة أثناء التشغيل من _locales/{locale}/messages.json. يحتوي كل مفتاح على حقل "message"، وحقل "description" اختياري للسياق، و"placeholders" اختيارية للقيم الديناميكية — وكل ذلك يفهمه LocalePack بشكلٍ أصلي.

بنية مجلد _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" }
    }
  }
}

واجهة برمجة التطبيقات وقت التشغيل

chrome.i18n

مثال على الاستدعاء

chrome.i18n.getMessage("appName")

مطلوب في ملف manifest

"default_locale"

يعرض متجر Chrome الإلكتروني تلقائيًا اسم الإضافة ووصفها بلغة الزائر عندما يحتوي _locales/ على مجلد لغته.

تعرّف على تنسيق _locales →

Chrome-specific rules that break builds

Chrome's i18n system fails quietly. These are the four rules that cause most broken releases.

A fixed list of locale folders
Chrome reads only a fixed set of locale codes under _locales/. Any folder outside that list is ignored — no build error, no console warning, the strings simply never load.
Underscores, not hyphens
Chrome expects pt_BR and zh_CN. BCP-47 style pt-BR or zh-CN does not match any supported locale, so the folder is skipped and the UI falls back to default_locale.
default_locale is not optional
If an extension ships a _locales/ directory, manifest.json must declare default_locale. Omit it and the manifest fails validation outright.
getMessage() is synchronous
chrome.i18n.getMessage() reads from disk synchronously, which makes it awkward inside an async Manifest V3 service worker — unlike a popup or content script, where it behaves normally.

A key that does not exist returns an empty string and logs nothing at all. Missing translations show up as blank UI, not as errors.

لماذا لا تستخدم الأدوات العامة فحسب؟

أدوات الترجمة العامة لا تفهم تنسيق إضافة كروم.

LocalePack
ترجمة يدوية
نظام TMS عام
وقت الإعداددقيقتانساعات لكل لغةأكثر من 30 دقيقة
شفافية التكلفة
أمان تنسيق Chrome
حماية العناصر النائبة
السرعة (52 لغة)< 5 دقائقأسابيعساعات
الأفضل لـإضافات Chromeمشاريع صغيرةتطبيقات ويب للمؤسسات

قصص نجاح

مشاريع حقيقية استخدمت LocalePack للوصول إلى جمهور عالمي بما يصل إلى 52 لغة.

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.

عرض جميع قصص النجاح

موثوق به من مطوري الإضافات

“وفّر عليّ ساعات من العمل الممل. رفعت ملف messages.json الخاص بي، وحصلت على ترجمات مثالية بالصيغة الدقيقة التي أحتاجها.”

سارة ك.

مطوّرة مستقلة، إضافة AdBlock

“أخيرًا أداة تفهم تنسيق إضافات Chrome. لا مزيد من إصلاح العناصر النائبة المعطّلة بعد الترجمة.”

ماركوس ت.

مشرف على إضافة

“كان التسعير الشفاف هو نقطة الحسم. كنت أعرف بالضبط ما سأدفعه قبل رفع أي شيء.”

ديف ج.

مساهم في المصادر المفتوحة

52

اللغات المحلية المدعومة

100%

مخرجات آمنة للعناصر النائبة

ZIP

جاهز للإطلاق

الأسئلة الشائعة

كل ما تحتاج إلى معرفته عن LocalePack.

Related developer guides

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

How to localize a Chrome extension (complete guide)

Step-by-step guide to adding i18n to a Chrome extension: _locales structure, default_locale, messages.json syntax, chrome.i18n.getMessage(), placeholder preservation, and how to test locale switching.

chrome.i18n: the complete API reference

All four chrome.i18n methods with exact signatures and return types: which are synchronous, which return promises, what getMessage() returns when it fails, and how browser.i18n differs in Firefox and Safari.

chrome.i18n in MV3 service workers

Synchronous getMessage() is an advantage in an MV3 service worker, not a problem — a common claim that gets this backwards. What actually breaks is the DOM, global-variable caching, localStorage and XMLHttpRequest.

Best tools for Chrome extension localization

An honest comparison of tools that translate Chrome extension messages.json files: LocalePack, Crowdin, Lokalise, Phrase, POEditor, Localazy, Weblate, and Localeship — setup overhead, pricing models, and placeholder safety.

LocalePack vs Lokalise for Chrome Extensions

Honest comparison of LocalePack and Lokalise for Chrome extension messages.json translation. Lokalise is a full TMS with team workflows and a monthly subscription; LocalePack is upload → pay once → download.

Browse all guides →

هل أنت مستعد لشحن إضافة كروم عالميًا؟

ادفع مرة واحدة - نزّل ملف ZIP - اشحن عالميًا

جرّب LocalePack
LocalePack
أدلةالخصوصيةالشروطالدعم

© 2025 LocalePack. جميع الحقوق محفوظة.

تمت ترجمة هذا المشروع باستخدام LocalePack logoLocalePack