跳转至主要内容
For Enterprises

better-i18n 企业级方案:扩展您的本地化基础设施

API 优先的翻译管理,具备基于角色的访问控制、审计日志、CDN 分发和 GitHub 集成。专为需要对 i18n 工作流进行程序化控制的工程团队而构建。

企业版 better-i18n:扩展你的本地化基础设施

当你的产品以多种语言发布时,本地化就变成了基础设施——而不是一次性项目。你需要程序化访问、CI/CD 集成、一致的术语执行,以及对已翻译、待处理和缺失内容的可见性。

better-i18n 是一个 API 优先的翻译管理平台,专为工程团队设计。它提供构建模块——REST API、Content SDK、CLI 工具、MCP 服务器、CDN 分发和 GitHub 集成——使本地化成为开发工作流的无缝组成部分。


企业团队实际获得什么

API 优先架构

better-i18n 的每个功能都可通过 REST API 使用。你的内部工具、CI 流水线和自定义工作流可以以编程方式与平台交互:

翻译管理 APIdash.better-i18n.com/api):

操作功能
listKeys使用搜索、命名空间和状态过滤器查询翻译键
createKeys创建带有源文本和初始翻译的键
updateKeys跨语言更新现有键的翻译
deleteKeys软删除不再使用的键
listProjects列出组织中的所有项目
getProject获取项目详细信息,包括语言和命名空间

Content SDK@better-i18n/sdk):

一个 Supabase 风格的查询构建器,用于获取本地化内容条目:

import { createClient } from "@better-i18n/sdk";

const client = createClient({
  project: "your-org/your-project",
  apiKey: process.env.BETTER_I18N_CONTENT_API_KEY,
});

// 获取法语的已发布博客文章
const { data, total, hasMore } = await client
  .from("blog-posts")
  .eq("status", "published")
  .language("fr")
  .order("publishedAt", { ascending: false })
  .limit(20);

该 SDK 零依赖,完全使用 TypeScript 类型化,可在任何 JavaScript 运行时中工作。

CDN 分发

翻译通过 Cloudflare 的边缘网络提供:

https://cdn.better-i18n.com/{org}/{project}/{locale}/{namespace}.json

全球低于 100 毫秒的分发。在仪表板或通过 API 更新翻译,无需重新部署应用即可在 CDN 上生效。

GitHub 集成

better-i18n 与你的仓库同步:

  • Webhook 触发同步 — Push 事件触发翻译文件更新
  • Pull Request 工作流 — 翻译更新以你控制的 PR 形式推送
  • 最小权限 — 仅对配置的翻译文件模式(如 locales/**/*.json)具有读/写权限
  • 完全合并控制 — 你决定翻译何时合入你的代码库

开发者工作流 CLI

@better-i18n/cli 集成到你的开发流程中:

# 检测 React/Next.js 代码中的硬编码字符串
npx @better-i18n/cli scan --ci

# 将本地翻译键与云项目进行比较
npx @better-i18n/cli sync --format json

scan 添加到你的 pre-commit 钩子或 CI 流水线。使用 sync 在发布前审核翻译覆盖率。

AI 辅助翻译的 MCP 服务器

两个 MCP 服务器将你的 AI 工具直接连接到翻译工作区:

工具数用途
@better-i18n/mcp11 个工具翻译管理(键、翻译、发布)
@better-i18n/mcp-content17 个工具内容管理(模型、条目、本地化内容)

与 Claude、Cursor、Windsurf 和任何 MCP 兼容的 AI 工具配合使用。你的 AI 助手可以创建键、更新翻译和管理内容,无需离开 IDE。


安全性和访问控制

基础设施

  • Cloudflare Workers — 边缘计算,内置 DDoS 防护
  • PlanetScale MySQL — 无服务器数据库,自动备份
  • Cloudflare R2 — 翻译文件的对象存储

加密

  • 静态数据:AES-256 加密
  • 传输中数据:所有连接使用 TLS 1.3

认证

  • 仪表板:GitHub OAuth(不存储密码)
  • API:使用 bcrypt 哈希的 Bearer 令牌认证
  • 密钥范围:API 密钥可以限定到特定项目
  • 密钥管理:从仪表板即时撤销

访问控制

  • 组织和项目级别的基于角色的访问控制(RBAC)
  • 所有敏感操作的审计日志
  • 所有内部访问的最小权限原则

合规性

标准状态
GDPR合规——可提供数据处理协议,支持删除权,可按要求导出数据
SOC 2 Type II进行中——我们正在努力获取认证

透明声明:我们尚未获得 SOC 2 Type II 认证。我们的基础设施提供商(Cloudflare、PlanetScale)持有 SOC 2 Type II 和 ISO 27001 认证。我们保持与这些标准一致的安全实践,并正在寻求自己的认证。详细信息请参阅我们的安全文档


框架支持

框架亮点
Next.js(App Router 和 Pages)@better-i18n/next服务器组件,中间件路由
TanStack Start@better-i18n/use-intlSSR,基于文件的路由与 $locale 参数
Vite + React@better-i18n/use-intlSPA,客户端语言切换
Expo(React Native)@better-i18n/expo离线缓存,动态本地化,OTA 更新

所有框架集成使用相同的翻译键和命名空间,因此你的 Web 和移动应用共享单一事实来源。


多团队翻译管理

命名空间组织

按团队、功能或内容类型组织翻译:

your-org/your-project
├── auth/          → 认证团队
├── dashboard/     → 产品团队
├── marketing/     → 营销团队
├── help/          → 支持团队
└── onboarding/    → 增长团队

每个命名空间可以有独立的翻译进度和审核工作流。

术语表管理

一次性定义品牌术语、产品名称和技术词汇。术语表在所有翻译中确保一致性:

  • 批准的术语 — 为每种语言设置产品术语的正确翻译
  • 禁止翻译规则 — 标记应保留源语言的品牌名称、技术术语和缩写
  • 一致性警告 — 翻译人员使用非批准的替代词时会收到通知

带上下文的 AI 翻译

AI 翻译尊重你的术语表和命名空间上下文。用于:

  • 初稿生成 — AI 生成遵循你术语的翻译,然后人工审核人员优化
  • 批量翻译 — 在几分钟内将整个命名空间翻译成新语言
  • 模型选择 — 根据你的质量偏好选择 GPT-4o、Claude、Gemini 或 DeepL

大型组织的扩展模式

多项目结构

企业组织通常有多个产品。每个产品获得自己的 better-i18n 项目,具有独立的命名空间、术语表和团队访问权限:

your-org/web-app
your-org/mobile-app
your-org/marketing-site
your-org/help-center

Content SDK 和 REST API 使用相同的认证跨所有项目工作。

CI/CD 集成

# .github/workflows/i18n-check.yml
name: Translation Coverage Check
on: [push, pull_request]

jobs:
  i18n:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: "20"
      - run: npx @better-i18n/cli scan --ci
      - run: npx @better-i18n/cli sync --format json

阻止引入未翻译字符串的 PR。在每次推送时审核翻译覆盖率。

大规模内容管理

Content SDK 支持本地化内容的无头 CMS 模式:

// 获取所有已发布的德语帮助文章
const { data: articles, total } = await client
  .from("help-articles")
  .eq("status", "published")
  .language("de")
  .order("updatedAt", { ascending: false })
  .limit(50);

// 获取单篇文章,展开作者关系
const { data: article } = await client
  .from("help-articles")
  .language("de")
  .expand("author", "category")
  .single("getting-started");

查询构建器是不可变的,完全类型化的,返回带有 totalhasMore 元数据的分页结果。


我们尚未提供的(但已在规划中)

我们相信对当前能力保持坦诚:

  • SSO/SAML — 尚不可用。认证目前通过 GitHub OAuth。SSO 在我们的路线图上。
  • 本地部署 — 我们是一个云托管的 SaaS 平台。目前不提供自托管选项。
  • 自定义数据驻留 — 数据通过 Cloudflare 的全球网络处理并存储在 PlanetScale 中。特定区域的托管尚不可用。
  • 专用 SLA — 我们目前不提供带有经济处罚的合同正常运行时间 SLA。

如果这些是你组织的阻碍因素,联系我们讨论你的需求和我们的路线图时间表。


开始使用

  1. 创建你的组织,访问 dash.better-i18n.com
  2. 设置你的第一个项目并配置语言
  3. 安装 CLInpm install -D @better-i18n/cli
  4. 连接 GitHub — 为你的翻译文件启用同步
  5. 添加 MCP 服务器 — 让你的 AI 工具访问你的翻译
  6. 集成 SDK — 在你的应用中使用 @better-i18n/next@better-i18n/use-intl@better-i18n/expo

免费开始——无需信用卡。API、CLI、MCP 服务器和所有框架集成在每个计划中都可用。查看我们的文档获取详细的设置指南。

准备好全球化发布了吗?

加入数百个使用 Better i18n 提供更快、上下文感知翻译的团队。