Enforcing the existence of the Component.stories.tsx
file when the Component.tsx
file exists, validating folder structure, and more using eslint-plugin-project-structure.
#28946
Unanswered
Igorkowalski94
asked this question in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hey everyone, I think you might find my library useful. It lets you enforce the presence of a
.stories.tsx
file whenever a related file exists, and it also allows you to validate folder structure and much more.eslint‑plugin-project‑structure
ESLint plugin with rules to help you achieve a scalable, consistent, and well-structured project.
Create your own framework! Define your folder structure, advanced naming conventions, file composition, and create independent modules.
Take your project to the next level and save time by automating the review of key principles of a healthy project!
project‑structure/folder‑structure
Enforce rules on folder structure to keep your project consistent, orderly and well thought out.
*
and treating.
as a character, along with other conveniences../src/Component.tsx
exists, then./src/Component.test.tsx
and./src/stories/Component.stories.tsx
must also exist.project‑structure/independent‑modules
A key principle of a healthy project is to prevent the creation of a massive dependency tree, where removing or editing one feature triggers a chain reaction that impacts the entire project.
Create independent modules to keep your project scalable and easy to maintain. Get rid of dependencies between modules and create truly independent functionalities.
project‑structure/file‑composition
Enforce advanced naming rules and prohibit the use of given selectors in a given file.
Have full control over what your file can contain and the naming conventions it must follow.
class
,function
,arrowFunction
,type
,interface
,enum
,variable
,variableCallExpression
,variableTaggedTemplateExpression
.**/*.consts.ts
files can only contain variables,**/*.types.ts
files can only contain enums, interfaces and types.Beta Was this translation helpful? Give feedback.
All reactions