Mintlify

Lingo.dev CLIを使用したMintlifyのAI翻訳

Mintlifyとは?

Mintlifyは、美しくカスタマイズ可能なドキュメントサイトを作成するドキュメントプラットフォームです。検索、分析、APIプレイグラウンド機能が組み込まれており、モダンな開発者向けドキュメントを構築できます。

Lingo.dev CLIとは?

Lingo.devは、AI駆動の翻訳プラットフォームです。Lingo.dev CLIは、ソースファイルを読み取り、翻訳可能なコンテンツを大規模言語モデルに送信し、翻訳されたファイルをプロジェクトに書き戻します。

このガイドについて

このガイドでは、MintlifyドキュメントサイトでLingo.dev CLIをセットアップする方法を説明します。Mintlifyでプロジェクトをスキャフォールドし、翻訳パイプラインを構成し、結果を確認する方法を学習します。

ステップ1. Mintlifyプロジェクトをセットアップする

  1. Mintlify CLIをインストールします:

    npm i -g mint
    
  2. Mintlifyスターターテンプレートをクローンします:

    git clone https://github.com/mintlify/starter.git
    
  3. プロジェクトディレクトリに移動します:

    cd starter
    

ステップ2. ソースコンテンツを作成する

  1. ソースロケールでドキュメントを保存するディレクトリを作成します:

    mkdir en
    
  2. ドキュメントコンテンツを含むファイルを作成します(例:en/overview.mdx):

    ---
    title: "Introduction"
    description: "Welcome to the new home for your documentation"
    ---
    
    ## Getting started
    
    This documentation is automatically translated by Lingo.dev.
    
    ## Features
    
    Our product includes powerful capabilities for modern development.
    

ステップ3. CLIを構成する

プロジェクトのルートに、i18n.jsonファイルを作成します:

{
  "$schema": "https://lingo.dev/schema/i18n.json",
  "version": "1.10",
  "locale": {
    "source": "en",
    "targets": ["es"]
  },
  "buckets": {
    "mdx": {
      "include": ["[locale]/*.mdx", "[locale]/*/*.mdx"]
    }
  }
}

このファイルは以下を定義します:

  • Lingo.dev CLIが翻訳すべきファイル
  • 翻訳する言語間の設定

この場合、設定はMDXファイルを英語からスペイン語に翻訳します。

注意すべき点は以下の通りです:

  • [locale]は実行時に置き換えられるプレースホルダーです。これにより、コンテンツが1つの場所(例:en/index.mdx)から読み取られ、別の場所(例:es/index.mdx)に書き込まれることが保証されます。
  • Lingo.dev CLIは再帰的なglobパターン(例:**/*.mdx)をサポートしていません。ネストされたディレクトリ内に存在するファイルを翻訳するには、追加のincludeパターンを作成する必要があります。

詳細については、i18n.json設定を参照してください。

ステップ4. コンテンツを翻訳する

  1. Lingo.devアカウントにサインアップします。

  2. CLI経由でLingo.devにログインします:

    npx lingo.dev@latest login
    
  3. 翻訳パイプラインを実行します:

    npx lingo.dev@latest run
    

    CLIは翻訳されたコンテンツを保存するためのes/ディレクトリと、翻訳済みの内容を追跡する(不要な再翻訳を防ぐため)i18n.lockファイルを作成します。

ステップ5. 翻訳を使用する

  1. docs.jsonファイルで、navigationオブジェクトにlanguagesプロパティを追加します:

    {
      "navigation": {
        "languages": []
      }
    }
    
  2. サポートする各言語について、配列に個別のオブジェクトを追加します:

    {
      "navigation": {
        "languages": [
          {
            "language": "en",
            "groups": [
              {
                "group": "Getting started",
                "pages": ["en/overview"]
              }
            ]
          },
          {
            "language": "es",
            "groups": [
              {
                "group": "Getting started",
                "pages": ["es/overview"]
              }
            ]
          }
        ]
      }
    }
    

    注意点:

    • 各言語ごとにナビゲーション構造全体を個別に複製する必要があります。
    • MintlifyはLingo.dev CLIがサポートする言語のサブセットのみをサポートしています。
  3. 開発サーバーを起動します:

    mint dev
    
  4. http://localhost:3000にアクセスします。言語を切り替えるためのドロップダウンが表示されるはずです。

既知の制限事項

  • docs.jsonファイルで定義されているUIコピー(例:サイドバーグループラベル、検索プレースホルダーテキストなど)は翻訳されません。

サポートされている言語

MintlifyはLingo.dev CLIがサポートする言語のサブセットのみをサポートしています。最新のリストについては、公式ドキュメントを参照してください。

言語コード
アラビア語ar
中国語cn
中国語(繁体字)zh-Hant
英語en
フランス語fr
ドイツ語de
インドネシア語id
イタリア語it
日本語jp
韓国語ko
ポルトガル語(ブラジル)pt-BR
ロシア語ru
スペイン語es
トルコ語tr