Contributing
Monorepo structure and contributing guide for ESLint React
Contributions are welcome!
To get started with the project, please follow our contributing guidelines.
Monorepo Structure
This section provides a reference to the repository structure and the relationships between different components.
Packages Summary
This section provides a summary of the packages in the monorepo.
Local Packages
.pkgs/configs: Workspace config bases.pkgs/eff: JavaScript and TypeScript utilities
Internal Packages
- Utilities
packages/ast: TSESTree AST utility module for static analysispackages/var: TSESTree AST utility module for static analysis of variablespackages/jsx: TSESTree JSX utility module for static analysis of JSX patterns
- Core & Shared
packages/core: Utility module for static analysis of React core APIs and patternspackages/shared: Shared constants, types and functions
Public Packages
- Utilities
packages/kit: Utility module for building custom React rules with JavaScript functions
- ESLint Plugins
plugins/eslint-plugin-react-x: Core React rulesplugins/eslint-plugin-react-jsx: React Flavored JSX rulesplugins/eslint-plugin-react-rsc: React Server Components rulesplugins/eslint-plugin-react-dom: React DOM rulesplugins/eslint-plugin-react-web-api: Web API interaction rulesplugins/eslint-plugin-react-naming-convention: Naming convention rulesplugins/eslint-plugin-react-debug: Debugging rules for inspecting React patterns in codeplugins/eslint-plugin(npm:@eslint-react/eslint-plugin): A unified plugin that combines all individual plugins into one
Examples
examples/next: Next.js exampleexamples/preact: Preact exampleexamples/preact-compat: Preact compat exampleexamples/react-dom: React DOM exampleexamples/react-dom-js: React DOM JS exampleexamples/react-dom-with-custom-rules: React DOM with custom rules example
Documentation
apps/website: Documentation websiteapps/playground: Interactive playground (placeholder)