استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
تاريخ الإصدارات
- "تحديث استخدام واجهة برمجة تطبيقات useIntlayer في Solid للوصول المباشر إلى الخصائص"v8.9.04/5/2026
- "إضافة أمر init"v7.5.930/12/2025
- "بدء السجل"v5.5.1029/6/2025
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
تدويل تطبيق الموبايل باستخدام Lynx و React عبر Intlayer
انظر قالب التطبيق على GitHub.
لماذا تختار Intlayer مقارنة بالبدائل الأخرى؟
بالمقارنة مع الحلول الرئيسية مثل react-native-localize أو i18next، يعد Intlayer حلاً يأتي مزودًا بتحسينات متكاملة مثل:
تم تحسين Intlayer للعمل بشكل مثالي مع Lynx وReact من خلال تقديم نطاق المحتوى على مستوى المكونات، ودعم TypeScript، وجميع الميزات اللازمة لتوسيع نطاق التدويل (i18n).
بدلاً من تحميل ملفات JSON ضخمة إلى صفحاتك، قم بتحميل المحتوى الضروري فقط. يساعد Intlayer في تقليل حجم حزمة JavaScript (bundle size) وصفحاتك بنسبة تصل إلى 50%.
تحديد نطاق المحتوى لكل مكوّن على حدة يُسهّل صيانة التطبيقات الكبيرة. يمكنك نسخ مجلد ميزة بالكامل أو حذفه دون القلق بشأن مراجعة قاعدة بيانات المحتوى بأكملها. بالإضافة إلى ذلك، فإن Intlayer مكتوب بنظام أنواع قوي (Fully Typed) لضمان الدقة الكاملة لمحتواك.
يؤدي وضع المحتوى إلى جانب المكونات (Co-location) إلى تقليل السياق المطلوب بواسطة نماذج اللغات الكبيرة (LLMs). كما يوفر Intlayer مجموعة أدوات متكاملة مثل واجهة سطر الأوامر (CLI) لفحص الترجمات المفقودة، وLSP، وخادم MCP، ومهارات الوكلاء (Agent Skills)، لتوفير أفضل تجربة تطوير لوكلاء الذكاء الاصطناعي.
استخدم الأتمتة لترجمة المحتوى مباشرةً في مسار CI/CD الخاص بك باستخدام نموذج اللغة الكبير (LLM) الذي تختاره ووفق تكلفة مزود الذكاء الاصطناعي لديك. يقدم Intlayer أيضًا مترجمًا لأتمتة استخراج المحتوى، بالإضافة إلى منصة ويب للمساعدة في الترجمة في الخلفية.
قد يؤدي تحميل ملفات JSON ضخمة في المكونات إلى مشكلات في الأداء وسرعة الاستجابة. يعمل Intlayer على تحسين تحميل المحتوى بدقة عند وقت البناء (Build Time).
أكثر من مجرد حل i18n، يوفر Intlayer محررًا مرئيًا مستضافًا ذاتيًا ونظام إدارة محتوى كامل (CMS) لإدارة المحتوى متعدد اللغات في الوقت الفعلي، مما يجعل التعاون مع المترجمين وكتاب المحتوى وأعضاء الفريق الآخرين سلسًا للغاية. يمكن تخزين المحتوى محليًا و/أو عن بعد.
تثبيت التبعيات
من مشروع Lynx الخاص بك، قم بتثبيت الحزم التالية:
bashنسخ الكودنسخ الكود إلى الحافظة
علامة
--interactiveاختيارية. استخدمintlayer-cli initإذا كنت وكيل ذكاء اصطناعي.سيقوم هذا الأمر باكتشاف بيئتك وتثبيت الحزم المطلوبة. على سبيل المثال:
bashنسخ الكودنسخ الكود إلى الحافظة
الحزم
intlayer
أداة i18n الأساسية للتكوين، محتوى القاموس، إنشاء الأنواع، وأوامر CLI.react-intlayer
تكامل React الذي يوفر موفري السياق وخطافات React التي ستستخدمها في Lynx للحصول على اللغات وتبديلها.lynx-intlayer
تكامل Lynx الذي يوفر المكون الإضافي لدمج Intlayer مع Lynx bundler.
إنشاء تكوين Intlayer
في جذر مشروعك (أو في أي مكان مناسب)، قم بإنشاء ملف تكوين Intlayer. قد يبدو كالتالي:
intlayer.config.tsنسخ الكودنسخ الكود إلى الحافظة
import { Locales, type IntlayerConfig } from "intlayer"; const config: IntlayerConfig = { internationalization: { locales: [ Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH, // ... أضف أي لغات أخرى تحتاجها ], defaultLocale: Locales.ENGLISH, }, }; export default config;داخل هذا التكوين، يمكنك:
- تكوين قائمة اللغات المدعومة.
- تعيين لغة افتراضية.
- لاحقًا، يمكنك إضافة خيارات أكثر تقدمًا (مثل السجلات، أدلة المحتوى المخصصة، إلخ).
- راجع وثائق تكوين Intlayer للمزيد.
إضافة المكون الإضافي Intlayer إلى Lynx bundler
لاستخدام Intlayer مع Lynx، تحتاج إلى إضافة المكون الإضافي إلى ملف
lynx.config.tsالخاص بك:lynx.config.tsنسخ الكودنسخ الكود إلى الحافظة
إضافة موفر Intlayer
للحفاظ على تزامن لغة المستخدم عبر تطبيقك، تحتاج إلى تغليف المكون الجذري الخاص بك باستخدام المكون
IntlayerProviderمنreact-intlayer.أيضًا، تحتاج إلى إضافة ملف وظيفة
intlayerPolyfillلضمان عمل Intlayer بشكل صحيح.src/index.tsxنسخ الكودنسخ الكود إلى الحافظة
إعلان المحتوى الخاص بك
قم بإنشاء ملفات إعلان المحتوى في أي مكان في مشروعك (عادةً داخل
src/)، باستخدام أي من تنسيقات الامتداد التي يدعمها Intlayer:.content.json.content.jsonc.content.json5.content.ts.content.tsx.content.js.content.jsx.content.mjs.content.mjx.content.cjs.content.md.content.mdx.content.yaml.content.yml- إلخ.
مثال:
src/app.content.tsنسخ الكودنسخ الكود إلى الحافظة
import { t, type Dictionary } from "intlayer"; const appContent = { key: "app", content: { title: "React", subtitle: t({ en: "on Lynx", fr: "sur Lynx", es: "en Lynx", }), description: t({ ar: "اضغط على الشعار واستمتع!", en: "Tap the logo and have fun!", fr: "Appuyez sur le logo et amusez-vous!", es: "¡Toca el logo y diviértete!", }), hint: [ t({ ar: "تعديل", en: "Edit", fr: "Modifier", es: "Editar", }), " src/App.tsx ", t({ ar: "لرؤية التحديثات!", en: "to see updates!", fr: "pour voir les mises à jour!", es: "para ver actualizaciones!", }), ], }, } satisfies Dictionary; export default appContent;لمزيد من التفاصيل حول إعلانات المحتوى، راجع وثائق محتوى Intlayer.
استخدام Intlayer في مكوناتك
استخدم الخطاف
useIntlayerفي المكونات الفرعية للحصول على المحتوى المحلي.src/App.tsxنسخ الكودنسخ الكود إلى الحافظة
عند استخدام
content.someKeyفي الخصائص النصية (مثل خاصيةtitleللزر أو خاصيةchildrenلمكونText)، قم باستدعاءcontent.someKey.valueللحصول على النص الفعلي.تغيير لغة التطبيق
لتبديل اللغات من داخل مكوناتك، يمكنك استخدام طريقة
setLocaleمن الخطافuseLocale:src/components/LocaleSwitcher.tsxنسخ الكودنسخ الكود إلى الحافظة
هذا يؤدي إلى إعادة رسم جميع المكونات التي تستخدم محتوى Intlayer، مما يعرض الآن الترجمات للغة الجديدة.
راجع وثائق
useLocaleلمزيد من التفاصيل.
إعداد TypeScript (إذا كنت تستخدم TypeScript)
يقوم Intlayer بإنشاء تعريفات الأنواع في مجلد مخفي (افتراضيًا .intlayer) لتحسين الإكمال التلقائي واكتشاف أخطاء الترجمة:
نسخ الكود إلى الحافظة
هذا ما يتيح ميزات مثل:
- الإكمال التلقائي لمفاتيح القاموس.
- التحقق من النوع الذي يحذرك إذا قمت بالوصول إلى مفتاح غير موجود أو عدم تطابق النوع.
إعداد Git
لتجنب الالتزام بالملفات التي يتم إنشاؤها تلقائيًا بواسطة Intlayer، أضف التالي إلى ملف .gitignore الخاص بك:
نسخ الكود إلى الحافظة
إضافة VS Code
لتحسين تجربة التطوير الخاصة بك مع Intlayer، يمكنك تثبيت إضافة Intlayer الرسمية لـ VS Code.
تقدم هذه الإضافة:
- الإكمال التلقائي لمفاتيح الترجمة.
- الكشف عن الأخطاء في الوقت الحقيقي للترجمات المفقودة.
- معاينات داخلية للمحتوى المترجم.
- إجراءات سريعة لإنشاء الترجمات وتحديثها بسهولة.
لمزيد من التفاصيل حول كيفية استخدام الإضافة، راجع توثيق إضافة Intlayer لـ VS Code.
