GitHub
ESLint

ESLint プラグインのテンプレートを作った

GitHub がリポジトリ テンプレートの機能をリリースしたそうなので、ESLint プラグインのテンプレートを作ってみました。


https://github.com/mysticatea/template-eslint-plugin


Use this template ボタンを押下すると新しいリポジトリを作る画面になるので、いつも通りにリポジトリを作るとテンプレートのファイル群がコミットされたリポジトリが作成されます。

ファイル群がそのままコピーされるだけなので、package.json のパッケージ名やリポジトリへのパスなんかは手動で書き換える必要があります。この辺はこれから機能拡充されていくのでしょう。


このテンプレートの内容を少しだけ解説します。


ファイル構造

名前
解説

docs/rules/
ドキュメント置き場

lib/rules/
ルール定義ファイル置き場

scripts/
開発補助スクリプト置き場

tests/lib/rules/
テストファイル置き場

.eslintignore, .eslintrc.js

ESLint の設定ファイル

.gitignore, .gitattributes

git の設定ファイル

.npmrc
npm の設定ファイル

.nycrc
カバレッジ測定の設定ファイル

.travis.yml
CI の設定ファイル

LICENSE
MIT の条文が書いてある。名前を追加してください。

README.md
りーどみー。お好みで更新してください。

package.json
パッケージ情報。パッケージ名その他を更新してください。


依存パッケージ・サービス

以下を使うようになっています (ESLint 本体と同じ)。お好みで変更してください。


開発補助ツール



  • npm test ... 各ルールをテストし、カバレッジを測定します。カバレッジは coverage/lcov-report/index.html に吐かれます。


  • npm run add-rule ルール名 ... ルールの定義ファイル・テストファイル・ドキュメント ファイルを作成します。


  • npm run update ... ルール定義ファイルに基づいて、lib/configs/recommended.json, lib/index.js, README.md のルールテーブル等を更新します。