Better Translatebetter-translate
  • التوثيق
  • CLI
  • سجل التغييرات
  • التوثيق
  • CLI
  • سجل التغييرات
GitHub
نفس الإعداد. نماذج مستضافة أو محلية

إعداد i18n واحد لأي مشروع TypeScriptإعداد i18n واحد لأي مشروع TypeScript

نفس الإعداد. نفس API. استخدم AI Gateway أو نماذج Ollama المحلية عبر Next.js وAstro وReact وTanStack Router وNode العادي. بدون إعادة كتابة.

عرض التوثيق
عرض على GitHub
رعاية المشروع
translate.ts
export const landingTranslationsConfig = {
  availableLocales: ["en", "es"] as const,
  defaultLocale: "en",
  fallbackLocale: "en",
  messages: { en, es },
} as const;

const translator = await configureTranslations(landingTranslationsConfig);

const { t } = createTranslationHelpers(translator);

t("hero.title")                    // -> "One i18n setup for any TypeScript project."
t("hero.descriptionParam", {
  params: {
    param1: "value1",
  }
})              // -> localized copy param
t("header.language", {
  locale: "es"
})                                 // -> "Idioma"
t("Write source strings", { bt: true })  // -> auto-extracted & keyed by CLI

نفس الإعداد في كل مكان

بدّل أطر العمل دون إعادة كتابة إعداد i18n الخاص بك

TSTypeScriptbun add @better-translate/core
Astrobun add @better-translate/astro
Bunbun add @better-translate/core
Node.jsbun add @better-translate/core
Reactbun add @better-translate/react
Next.jsbun add @better-translate/nextjs
TanStack Routerbun add @better-translate/tanstack-router

نفس الإعداد. كل بيئة

نفس الإعداد، نفس API، نفس التجربة، بغض النظر عن بيئة TypeScript التي تستخدمها.

نفس الإعداد، كل بيئة

اكتب إعداد الترجمة مرة واحدة. يعمل بنفس الطريقة في Next.js وAstro وReact وTanStack Router وNode العادي. بدّل البيئات، احتفظ بإعدادك.

آمن النوع افتراضياً

استدلال TypeScript كامل لمفاتيح الترجمة ومتغيرات الاستيفاء. الأخطاء المطبعية والمفاتيح المفقودة تصبح أخطاء ترجمة.

الإكمال التلقائي في كل مكان

محررك يعرف كل مفتاح في كائن رسائلك. لا مزيد من التخمين لأن `t("home.` يبدأ الإكمال فوراً.

تبديل اللغة

بدّل اللغات أثناء التشغيل دون إعادة تحميل الصفحة. التجاوزات لكل استدعاء تتيح لك عرض أي لغة عند الطلب.

مستضافة أو محلية. نفس CLI

أنشئ ملفات الإعدادات المحلية باستخدام نفس CLI سواء كنت تستخدم AI Gateway أو نماذج Ollama المحلية.

better-translate.config.ts
import { createOllama } from "ollama-ai-provider-v2";
import { defineConfig } from "@better-translate/cli/config";

const ollama = createOllama({
  baseURL: process.env.OLLAMA_BASE_URL ?? "http://127.0.0.1:11434/api",
});

export default defineConfig({
  sourceLocale: "en",
  locales: ["es", "fr"],
  model: ollama("qwen3:4b"),
  providerOptions: {
    ollama: {
      think: true,
    },
  },
  messages: {
    entry: "./src/messages/en.json",
  },
});

إطار عملك، اختيارك

إعداد الترجمة الخاص بك يعمل بنفس الطريقة في كل بيئة TypeScript. محولات أصلية، API متطابق.

TS

TypeScript

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

bun add @better-translate/core

Astro

مساعدات محددة بالطلب ومجموعات محتوى Astro المحلية لـ .md و.mdx.

bun add @better-translate/astro

Bun

دعم أصلي لوقت تشغيل Bun بدون إعداد إضافي.

bun add @better-translate/core

Node.js

الأساس بدون تبعيات للنصوص والخوادم والمهام الخلفية.

bun add @better-translate/core

React

السياق والخطافات والعرض العميل المدرك للغة لتطبيقات React.

bun add @better-translate/react

Next.js

مكونات الخادم وApp Router ومساعدي اللغة المدركين للمسار.

bun add @better-translate/nextjs

TanStack Router

دعم التوجيه الآمن النوعياً لمشاريع TanStack Router، بما في ذلك تطبيقات TanStack Start.

bun add @better-translate/tanstack-router
Better Translate
التوثيقGitHubالرعايةnpm

ترخيص MIT · مبني بـ TypeScript