Hello Dify Logo

貢献について

Hello Difyに貢献する

事例の貢献

このプロジェクトに事例を提供したい場合は、以下の手順に従ってください:

1. プロジェクトをフォークする

2. フォークしたプロジェクトをクローンする

プロジェクトをフォークした後、フォークしたプロジェクトのgitリンクをコピーします(例:https://github.com/あなたのユーザー名/hello-dify.git

image.png

ターミナルを開き、希望の場所に移動し、次のコマンドを使用してプロジェクトをクローンします:

git clone https://github.com/あなたのユーザー名/hello-dify.git

3. MDXドキュメントを編集する

文書作成にはAIアシスト機能を備えたIDE(Cursor、Windsurf、Clineなど)の使用を強くお勧めします。

新しいウィンドウを開き、ディレクトリを選択してプロジェクトに入ります。

プロジェクトのディレクトリ構造は以下の通りです:

content/                   # メインコンテンツディレクトリ
├── docs/                  # すべてのドキュメントリソース
│   ├── index.{lang}.mdx   # ホームページ文書
│   ├── meta.{lang}.json   # メタデータ設定
│   ├── contributing.{lang}.mdx # 貢献ガイドライン
│   ├── knowledge-base/    # ナレッジベース関連文書
│   │   ├── meta.{lang}.json    # ナレッジベースセクションのメタデータ
│   │   └── image-retrieval.{lang}.mdx # テキスト画像ナレッジベースのドキュメント
│   ├── plugin/            # プラグイン関連文書
│   │   ├── meta.{lang}.json    # プラグインセクションのメタデータ
│   │   └── ... 各種プラグインのドキュメント
│   └── workflow/          # ワークフロー関連文書
│       ├── meta.{lang}.json    # ワークフローセクションのメタデータ
│       ├── node/              # ノード固有のドキュメント
│       │   └── ... ノード関連文書
│       ├── workflow-chatflow-difference.{lang}.mdx # ワークフローとチャットフローの比較
│       └── twitter-mbti-receipt.{lang}.mdx # Twitter MBTIの事例

各ドキュメントディレクトリは、以下の基本原則に従っています:

  1. meta.{lang}.jsonファイル:ナビゲーションメニューにおけるドキュメントの表示順序と構造を制御します。例:

    {
        "title": "ドキュメントタイトル",
        "icon": "アイコン名",
        "defaultOpen": true,
        "pages": [
            "ドキュメント1",
            "ドキュメント2",
            "サブディレクトリ"
        ]
    }

    このプロジェクトではRemixIconをアイコンとして使用しています

  2. ドキュメントファイル(*.mdx):実際の内容、frontmatter(ファイル上部のYAML情報ブロック)を含める必要があります。例:

    ---
    title: ドキュメントタイトル
    description: ドキュメント説明
    enableComments: true
    author: "著者名"
    github_username: "GitHubユーザー名"
    x_username: "Xユーザー名"
    ---
  3. サブディレクトリ:より具体的なコンテンツカテゴリ、各サブディレクトリには独自のmeta.{lang}.jsonファイルが必要です

ドキュメントのファイル名はdocument.{lang}.mdxの形式に従います

英語ドキュメント:document.mdx 中国語ドキュメント:document.zh.mdx 日本語ドキュメント:document.ja.mdx

国際化(i18n)

一つの言語でコンテンツを書くだけで、Cursorが残りの作業を手伝ってくれます。

このプロジェクトには内蔵のCursorルールがあります:.cursor/rules/i18n.mdc

@を使ってi8n.mdcを追加する必要があります。以下のプロンプトを参考にしてください:

Help me i18n xxx.{lang}.mdx, translate to xxx

image.png

Cursorルールには、ファイル名とmeta.{lang}.jsonの設定方法についての指示が含まれています。

画像

このプロジェクトはnext.config.mjsを通じてドメインホワイトリストを制御しています。現在、集中的な画像管理のためにsm.msが画像ホスティングサービスとして許可されています。

他の画像ホスティングソリューションを使用する場合は、next.config.mjsを修正してください。ただし、統一された保存の原則に従ってください。

スクリーンショットを撮る前に言語を英語に設定することを強くお勧めします。これにより、異なる言語の読者が内容を理解しやすくなります。

4. テスト

提出する前に、ローカルテストを完了して正しくコンパイルされることを確認してください。テスト手順は以下の通りです:

依存関係のインストール

まず、すべての依存関係がインストールされていることを確認します:

# npmを使用する場合
npm install

# またはyarnを使用する場合
yarn

ローカルで実行

開発サーバーを起動して結果を確認します:

# npmを使用する場合
npm run dev

# またはyarnを使用する場合
yarn dev

http://localhost:3000にアクセスして、ドキュメントが正しく表示されるか確認します。

i18n完全性チェック

重要な注意:すべての言語バージョンのドキュメントを完成させてください。デフォルトでは、英語(.mdx)ファイルを作成しないと、他の言語のドキュメントはコンパイルに失敗します。

必要なファイル:

  1. 英語版(基本バージョン):document.mdx
  2. 中国語版:document.zh.mdx
  3. 日本語版:document.ja.mdx
  4. 各言語のメタデータファイル:meta.jsonmeta.zh.jsonmeta.ja.json

チェック方法:

  • yarn buildまたはnpm run buildを実行してビルドをテストします
  • コンソールにコンパイルエラーがあるかどうかを確認します
  • 一般的なエラーには以下が含まれます:
    • 特定の言語のドキュメントの欠落
    • frontmatterフォーマットエラー
    • meta.jsonで存在しないドキュメントを参照している
    • 画像リンクの破損

コンパイルエラーが見つかった場合は、提出する前にエラーメッセージに基づいて問題を修正してください。

すべての言語バージョンをテストする

異なる言語を切り替えてドキュメントを表示します:

  • 英語版:http://localhost:3000/en/docs/...
  • 中国語版:http://localhost:3000/zh/docs/...
  • 日本語版:http://localhost:3000/ja/docs/...

すべての言語バージョンが正しく表示され、内容に一貫性があることを確認してください。

5. 提出

IDEでをクリックし、をクリックして、ブランチ -> ブランチを作成を選択します:

2025-05-18 15.55.32.png

ブランチ名を入力します。ドキュメントのみを追加した場合は、docs/ドキュメント名と呼ぶことができます。

2025-05-18 15.56.41.png

下のボタンをクリックし、作成したブランチを選択して、PR(プルリクエスト)を完了します


事例やフィードバックを提出する

事例を提出し、内容の作成を手伝ってほしい場合は、このリポジトリにIssueを提出できます。

Issue形式の参考:

## タイトル
[ここに事例のタイトルを入力]

## 説明
[この事例の機能と目的を簡単に説明]

## プロジェクトリンク
[WorkflowのDSLファイルなど、プロジェクトのリンクをリスト]

## 原文リンク
[プロジェクトのREADMEなど、事例に関連する原文、リンク、または文書を提供]

## その他の情報
[指定する必要があるその他の情報]

提出されたIssueをレビューし、受け入れ後に対応するドキュメントを作成します。質問や詳細な議論が必要な場合は、Issueにコメントを残してください。