Eslint-Plugin-Project-structure
スケーラブルで一貫した、適切に構造化されたプロジェクトを実現するのに役立つルールを備えた強力なESLINTプラグイン。
独自のフレームワークを作成してください!フォルダー構造、ファイル構成、高度な命名規則を定義し、独立したモジュールを作成します。
健康的なプロジェクトの主要な原則のレビューを自動化することにより、プロジェクトを次のレベルに進めて時間を節約してください!
?一般情報
? Eslint-Plugin-Project-structureルールの遊び場。
最新のリリースを確認し、新しい機能と変更を使用して最新情報を入手してください。
コミュニティの一員になりましょう!
Aを残して、友達とリンクを共有してください。
- ご質問がある場合、または要件を満たす構成を作成するサポートが必要な場合は、ヘルプを使用してください。
- ドキュメントにバグやエラーが見つかった場合は、問題を報告してください。
- 新しい機能のアイデアや既存の機能の改善がある場合は、アイデアをお楽しみください。
- さまざまなフレームワーク間でプロジェクト構造について議論することに興味がある場合、または提案されたアイデアに投票したい場合は、議論。
ドキュメント
- プロジェクト構造/フォルダー構造
- プロジェクト構造/独立モジュール
- プロジェクト構造/ファイルコンポジション
プロジェクト構造/フォルダー構造
フォルダー構造のルールを強制して、プロジェクトを一貫性を保ち、秩序だった状態に保ちます。
- フォルダー構造の検証。構造物の外側のファイル/フォルダーは、エラーと見なされます。
- WildCard
*やTreatingなどの機能を使用したファイル/フォルダー名Regex検証.キャラクターとして、他の便利さとともに。 - ケースの検証に基づいてビルドします。
- フォルダーの名前を継承します。ファイル/フォルダーは、配置されているフォルダーの名前を継承します。独自のプレフィックス/サフィックスを追加したり、ケースを変更したりするオプション。
- 特定のファイル/フォルダーが存在する場合、ファイル/フォルダーの存在を実施します。たとえば、
./src/Component.tsxが存在する場合、 ./src/Component.test.tsx component.test.tsxおよび./src/stories/Component.stories.tsxにも存在する必要があります。 - フォルダー構造の再利用可能なルール。
- TypeScriptサポートを備えた個別の構成ファイルを作成するオプション。
- 特定のフォルダーのネスト/フラット構造を強制します。
- すべてのファイル拡張子のサポート。
- フォルダー再帰。フォルダー構造を繰り返しネストし、ネストの深さに制限を設定できます。フォルダー構造の平坦化など、最終レベルでルールを変更するオプションもあります。
- フォルダー構造をツリーとして表すことにより、深くネストされたフォルダー(再帰)であっても、繰り返しや正確なエラーメッセージが少なくなります。
- パスの長さを確認し、制限を超えたときに通知します。
プロジェクト構造/独立モジュール
健全なプロジェクトの重要な原則は、1つの機能を削除または編集することで、プロジェクト全体に影響を与える連鎖反応をトリガーすることです。
インポートできるものを制御するモジュールを作成します。フォルダーまたはファイル間の不必要な依存関係を排除して、真に独立した機能を構築します。
- インポートできるものを制御するモジュールを作成します(たとえば、1つの機能のコンポーネントなどのコンポーネントを別の機能にインポートすることはできません)。
- ネストされたフォルダー構造であっても、非常に詳細なルールを作成する機能。大きなモジュール、サブモジュール、単一のファイルであろうと、制限はありません。
-
require() 、 import() 、 jest.mock() 、およびjest.requireActual() 、 ExportAllDeclarationおよびExportNamedDeclarationなど、あらゆる種類の輸入品のサポート。 - 特定のモジュールの外部インポート(node_modules)を無効にします(例外を追加するオプション)。
- 非関連/相対輸入サポート。
- 内蔵のインポートリゾルバーなので、追加のプラグインをインストールする必要はありません。また、最も人気のあるファイル拡張機能の組み込み構成も含まれているため、手動で何かを構成する必要はありません。
- 再利用可能なインポートパターン。
- パスエイリアスのサポート。プラグインは、tsconfig.jsonを自動的に検出し、設定を使用します。手動で入力するオプションもあります。
- TypeScriptサポートを備えた個別の構成ファイルを作成するオプション。
プロジェクト構造/ファイル構成
理想的なファイルを作成してください!
セレクターの順序と量を完全に制御します。
高度な命名規則を定義し、指定されたファイルで特定のセレクターの使用を禁止します。
- ファイル構成の検証。
- サポートされているセレクター:
class 、 function 、 arrowFunction 、 type 、 interface 、 enum 、 variable 、 variableExpression 、 propertyDefinition 。 - ファイル名をセレクター名として継承します。独自のプレフィックス/接尾辞を追加したり、ケースを変更したり、ファイル名の一部を削除したりするオプション。
- 指定されたファイルで特定のセレクターの使用を禁止します。たとえば、
**/*.consts.ts **/*.types.tsには変数のみを含めることができます。 - セレクターが特定のファイルに表示される順序を定義します。
--fixのサポートは、注文を自動的に修正します。 - エクスポートされたセレクター、ファイルのルート内のセレクター、ファイル内のネスト/すべてのセレクターのルール。それらは組み合わせて一緒に使用できます。
- ファイルごとに最大1つのメインコンポーネント/関数/クラスを実施します。
- 特定のファイルのルートに特定のセレクターの発生に特定の制限を設定する機能。
- セレクター名Regex検証。
- ケースの検証に基づいてビルドします。
- さまざまなファイルの異なるルール。
- TypeScriptサポートを備えた個別の構成ファイルを作成するオプション。
あなたのサポートをすべてのスポンサーに感謝します!あなたは私に続け続ける力と動機を与えてくれます!
おかげで、他の人が理想的なプロジェクトを作成するのを手伝うことができます!