私達は、Hexoの開発への参加を歓迎しています。 🤗
開発
私達は、Hexoの開発への参加を歓迎しています。 この文書は、そのプロセスをサポートします。
始める前に
まず、Contributor Covenant Code of Conductをお読みください。
コーディングスタイルに従ってください:
- Google JavaScript スタイルガイドに従ってください。
 - ソフトタブを使用し、2スペースのインデントを使ってください。
 - コンマを先頭に置かないでください。
 
また、Hexoには独自のESLint設定があるため、貢献の際はESLintのルールに従っていることを確認してください。
ワークフロー
- hexojs/hexoをフォークします。
 - リポジトリをコンピューターにクローンし、依存関係をインストールします。
 
$ git clone https://github.com/<username>/hexo.git  | 
- ブランチを作成します。
 
$ git checkout -b new_feature  | 
- 開発を開始します。
 - ブランチをプッシュします:
 
$ git push origin new_feature  | 
- プルリクエストを作成し、変更内容を説明します。
 
注意
package.jsonのバージョン番号は変更しないでください。- プルリクエストは、テストが通った場合にのみマージされます。 提出前にテストを実行してください。
 
$ npm test  | 
公式プラグインの更新
公式プラグインに対するプルリクエストやIssueも歓迎します。 🤗
ドキュメントの更新
Hexoのドキュメントはオープンソースで、ソースコードはhexojs/siteで見つけることができます。
ワークフロー
- hexojs/siteをフォークします。
 - リポジトリをコンピューターにクローンし、依存関係をインストールします。
 
$ npm install hexo-cli -g # If you don't have hexo-cli installed  | 
- ドキュメントの編集を始めます。 ライブプレビューのためにサーバーを起動することができます。
 
$ hexo server  | 
- ブランチをプッシュします。
 - プルリクエストを作成し、変更を説明します。
 
翻訳
翻訳での貢献
現在、翻訳には Crowdin プラットフォームを使用しており、手動の git 操作なしで誰でも翻訳への貢献や投票ができます。
新たな言語の追加
- 新たなIssueを作成し私達にお知らせください。 Crowdin プロジェクト へのアクセス権を持つメンバーが言語設定を追加します。
 - Crowdinに言語が追加された後は、誰でも翻訳を行うことができます。
 source/_data/language.ymlに新しい言語を追加します。themes/navy/languages内のen.ymlをコピーし、言語名(すべて小文字)にリネームします。
問題の報告
Hexoの使用中に問題に遭遇した場合、トラブルシューティングで解決策を見つけるか、GitHubやGoogle Groupで質問してください。 解決策が見つからない場合は、GitHubで報告してください。
- デバッグモードで問題を示してください。
 - 新しい問題をGitHubで作成するときは、Issueテンプレートの手順に従い、デバッグメッセージとバージョンを提供してください。