fluentui
fluentui copied to clipboard
[Feature]: overhaul lint setup within monorepo
Library
React Components / v9 (@fluentui/react-components)
Pre-requirements:
- [x] https://github.com/microsoft/fluentui/issues/30332
- [x] https://github.com/microsoft/fluentui/issues/30334
Describe the feature that you would like added
From historically reasons @fluentui/eslint-plugin project was the only place that implemented custom rules used within monorepo and across project domain boundaries. This state of things is hard to maintain, extend and understand.
We need to overhaul current implementation and how we setup our lint configuration within projects.
Setup
- migrate to eslint flat configs
- configs extends from monorepo root eslint config, rather than using npm package names
Architecture
workspace specific rule lives within workspace eslint-rules project
we have plugin per domain:
note these plugins will be probably public and shipped to npm in order to consume these within other fluent projects/fluent users
- fluent-react-plugin
- fluent-react-components-plugin
- fluent-node-plugin
- fluent-*-plugin
Have you discussed this feature with our team
@microsoft/react-fliuent-build
Additional context
No response
Validations
- [X] Check that there isn't already an issue that requests the same feature to avoid creating a duplicate.
Priority
Normal
Related Issues
- https://github.com/microsoft/fluentui/issues/32183