コンテンツへスキップ
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パイプライン、カスタムワークフローからプラットフォームをプログラマティックに操作できます:

翻訳管理 API (dash.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のエッジネットワークから以下のURLで配信されます:

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

世界中で100ミリ秒未満の配信速度。ダッシュボードまたはAPIで翻訳を更新すれば、アプリケーションを再デプロイすることなくCDNに即座に反映されます。

GitHub連携

better-i18nはリポジトリと同期します:

  • Webhookトリガー同期 — プッシュイベントが翻訳ファイルの更新をトリガー
  • プルリクエストワークフロー — 翻訳更新をコントロール可能なPRとしてプッシュ
  • 最小権限 — 設定された翻訳ファイルパターン(例:locales/**/*.json)への読み書きのみ
  • 完全なマージ制御 — 翻訳をコードベースに反映するタイミングはあなたが決定

開発者ワークフローのためのCLI

@better-i18n/cliが開発プロセスに統合されます:

# React/Next.jsコード内のハードコードされた文字列を検出
npx @better-i18n/cli scan --ci

# ローカルの翻訳キーとクラウドプロジェクトを比較
npx @better-i18n/cli sync --format json

scanをプレコミットフックやCIパイプラインに追加しましょう。syncを使ってリリース前に翻訳カバレッジを監査できます。

AI支援翻訳のためのMCPサーバー

2つの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-intlクライアントサイドロケール切替のSPA
Expo(React Native)@better-i18n/expoオフラインキャッシュ、動的ローカライゼーション、OTA更新

すべてのフレームワーク統合は同じ翻訳キーと名前空間を使用するため、WebアプリとモバイルアプリでSingle Source of Truthを共有できます。


マルチチーム翻訳管理

名前空間の構成

翻訳をチーム、機能、またはコンテンツタイプごとに整理:

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. CLIをインストールnpm 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を使って、より速く文脈に沿った翻訳を届ける数百のチームに参加しましょう。