概要
このドキュメントトピックでは、Discourse へ機能リクエストを書く方法について、ステップバイステップガイドとして解説しています。
ステップ 1: 始める前に
Discourse の新機能について素晴らしいアイデアが浮かびましたか? それは素晴らしいことです! ここでは、そのアイデアをチームやコミュニティに効果的に共有する方法をご紹介します。機能リクエストを送信する前に、既存のディスカッションを検索し、あなたのアイデアがすでに提案されているか、実装済みではないかを確認してください。以下の方法で検索できます。
- Contribute > Feature カテゴリ内を検索する
- ページ右上の
アイコンをクリックして 検索 を開く。カテゴリやタグで絞り込むための高度なフィルターを使用できます。 - pr-welcome タグが付いたトピックを閲覧する - PR(Pull Request)とは、GitHub 上でのプルリクエストのことで、開発者がプロジェクトに新しいコードを導入する方法です。
- completed タグが付いたトピックを閲覧する
- Customization > Plugin および Customization > Theme component カテゴリ内を検索する
もしあなたの機能提案がすでにリストされている場合、投票や「いいね」、さらには追加のアイデアやユースケースをコメントとして返信することで、そのリクエストの優先度を高め、なぜその機能を追加すべきかをさらに伝えることができます。
あなたのアイデアに関する言及が見つからない場合は、機能リクエストを作成してください。
ステップ 2: 基本事項
タイトル
トピックのタイトルは情報量が多く、かつ長すぎないことが重要です。リクエストの範囲が一目で識別できるようにしてください。
カテゴリ
新しいトピックを作成する際は、Contribute > Feature カテゴリを選択してください。
タグ
タグは機能をグループ化・分類するために使用されます。そのため、リクエストを整理し、追跡しやすくするために、トピックに適切にタグを付けることは非常に役立ちます。例えば、chat プラグインに関連するものはすべて、1つのタグの下にまとめられます。
ステップ 3: リクエストの作成
良い機能リクエストを書くことは重要です。これにより、Discourse チームは改善が必要な領域を迅速に特定できます。
機能リクエストを作成する際は、あなたのアイデアを売り込み、その機能追加が根拠に基づいていることを人々に納得させることを目指してください。なぜ あなたの 機能を追加すべきなのかを、コミュニティ、あなた自身、そしてチームに対して説明してください。
トピックの本文では、あなたが求めている機能を簡潔に述べてください。具体的かつ詳細に記述し、曖昧さや開かれた終わり方にならないようにしてください。
文脈と説明を提供する
機能リクエストに対する文脈と説明を提供してください。
- 求めている機能の明確な説明
- 現在直面している問題やユースケース、そしてあなたの機能がそれをどのように解決するかを含める
- 関連する背景情報や、あなたが行った調査
例やスクリーンショットを提供する(任意)
該当する場合は、例、モックアップ、またはスクリーンショットを提供し、他の人があなたのアイデアを容易に想像できるようにしてください。
コミュニティと対話する
機能リクエストを作成した後、質問やフィードバックに対して返信することで、メンバーと対話してください。これにより、あなたのリクエストが検討される可能性が高まります。
次に何が起こるのか
機能リクエストを送信した後、それはコミュニティおよび Discourse チームによってレビューされます。以下のような対応が期待できます:
- コミュニティからのフィードバックとディスカッション
- Discourse スタッフからの返信(リクエストが実現可能かどうか、検討中かどうかを示す)
- 将来のアップデートにおける機能リクエストの実装の可能性
機能の実装を確実にするために?
場合によっては、機能リクエストがコア機能として適さないことがあります。機能決定のプロセスについてはこちらをご覧ください。ご自身で機能を開発できない場合でも、実装される可能性を高める方法はあります。
discourse.org の顧客になる
サイトを私たちにホスティングしていただき、開発資金を提供したい場合は、私たちの開発スケジュールでは顧客のリクエストを常に優先するため、その方法でより早く実装されることがあります。エンタープライズ顧客 は、コアチームに対して時間単位の料金でカスタム機能(通常はプラグインの形式)をリクエストできます。
「pr-welcome」タスクをスポンサーする
私たちは pr-welcome のトピックを包括的なリストとして用意しています。これらは完了してほしいタスクですが、現在私たちが作業する余裕がないものです。これらのタスクを誰かに依頼してスポンサーすることは、参加する素晴らしい方法であり、Discourse への貢献 は大変感謝されています。
マーケットプレイスで有償業務を提供する
ビジネスに不可欠なプラグインが必要な場合、Marketplace に有償の業務を広告してください。スクリーンショットや予算など、可能な限り多くの詳細を提供してください。また、「一時インストール」や「パーソナライズされたテーマ」などの標準化されたマイクロサービスを提供するフリーランサーを見つけることもできるかもしれません。
全般
一般的な注意点
行うべきこと
- リクエストは簡潔に保ち、単一の機能に焦点を当てる
- 実装や技術的な詳細について仮定しない
- コミュニティのフィードバックに基づいて妥協し、アイデアを適応させる意欲を示す
避けるべきこと
- 1つのトピックに複数の機能を含めない
- 他者にリクエストの範囲について疑問を持たせない
よくある質問(FAQs)
Q: 詳細な機能リクエストを作成する時間がない場合はどうすればよいですか?
A: すぐに詳細なリクエストを作成できない場合は、伝えたいことを考え直して、後でもう一度試してください。これにより、最善のケースを提示でき、他の人があなたのリクエストを支持し、追加される可能性が高まります。
Q: 機能リクエストはどこに投稿すべきですか?
A: 適切なカテゴリを使用してください。機能リクエストは #feature::category カテゴリに投稿する必要があります。
Q: リクエストに適切なタグがわからない場合はどうすればよいですか?
A: タグは使いやすさのためにプラグインやテーマコンポーネントの名前に一致しますが、Team のメンバーまたは Regular が、タグが空白の場合に適切なタグをトピックに追加します。
リクエストでは敬意を持ち、開かれた心でいるようにしてください。機能リクエストを使って不満を表明しないでください。不適切な言語や行動は、リクエストの遅延や無視につながる可能性があります。
追加リソース
- カテゴリ: Contribute > Feature, Marketplace, Customization > Plugin, Customization > Extras, Customization > Theme, Customization > Theme component
- タグ: current-projects, release-notes, pr-welcome, planned
- https://meta.stackexchange.com/questions/258136/how-do-i-write-a-good-feature-request
- How do we decide what goes into each release of Discourse?
- Discourse pricing | Discourse - Civilized Discussion
