[SUGGESTION] Adding eslint-plugin-project-structure to the project for validating folder structure and more, to automatically ensure scalability and consistency. #199
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hey, I think my library might interest you. Thanks to it, you can automatically validate your folder structure rules and much more.
If you are interested, I’d be happy to assist with the implementation and answer any questions you may have.
Below is the full description of the features:
eslint‑plugin-project‑structure
Powerful ESLint plugin with rules to help you achieve a scalable, consistent, and well-structured project.
Create your own framework! Define your folder structure, file composition, advanced naming conventions, 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.tsxexists, then./src/Component.test.tsxand./src/stories/Component.stories.tsxmust 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.
require(),import(),jest.mock(), andjest.requireActual(), as well asExportAllDeclarationandExportNamedDeclaration.project‑structure/file‑composition
Compose your ideal files!
Have full control over the order and quantity of selectors.
Define advanced naming conventions and prohibit the use of specific selectors in given files.
class,function,arrowFunction,type,interface,enum,variable,variableExpression.**/*.consts.tsfiles can only contain variables,**/*.types.tsfiles can only contain interfaces and types.--fixto automatically correct the order.