FSD-eslint-plugin
(github.com/kyh0726)FSD eslintプラグインを作ってみました!
こんにちは。
Feature-Sliced Design(FSD)構造を使いながら、ルールを自動で適用したくて eslint プラグインを1つ作ってみました。
現在実装されているルールは以下の2つです。
ルール一覧
no-cross-layer-import
→ 上位レイヤーが下位レイヤーを侵害する import を防ぎます。
segment-naming-rule
→ FSD セグメントの命名を強制します。
現在許可されているセグメントは次のように制限されています。
api / ui / model / lib / config
詳しい内容は GitHub の README にあります!
まだ初期段階なので、私が個人的にプロジェクトを進めながら必要だと感じたものだけ追加しました。
個人的には eslint plugin を使う中で、ルールを過剰に適用すると生産性がかえって下がると思っているので、最小限にしました。こういったプラグインを作るのは初めてなので、アドバイスをいただけたらと思って投稿しました。
もし興味のある方がいれば、フィードバックをいただけると本当にありがたいです!!
2件のコメント
わあ……これは本当に必要だったので、ありがとうございます!!
最近、自分のプロジェクトにFSDを導入したのですが、明確なレイヤーとセグメントの定義が難しく、管理も大変で悩んでいました……。使ってみて感想を残します!!
あ、ありがとうございます haha お役に立てたならうれしいです!