docs/react-v9/contributing/rfcs/shared/build-system/05-folder-organization.md
Contributors: Fluent UI React Build team, @justSlone
This proposal covers 2 topics:
Overall this RFC proposes that we organize our repo by NPM package names under the @fluentui namespace.
These names today are react, react-components, react-northstar, and web-components. Organizing by NPM package name, while not necessarily ideal and may change over time, has the benefit of making it easy to follow from NPM to the appropriate source code in GitHub. This also scales well if we add additional projects to the repo (as long as they are under the @fluentui namespace on NPM).
Some useful background is that we have heard from contributors that the current organization of the rfcs and specs folders at the root of the repo is confusing to contributors working on web-components. The RFCs and Specs don't mention clearly what project they are for.
With the addition of vNext to the repo we now have 4 actual projects in our repo:
@fluentui/react, @fluentui/react-northstar, @fluentui/web-components, and more recently @fluentui/react-components.
This leads to a fairly confusing and difficult to navigate repo. In particular we have some folders we are actively using, such as rfcs and specs which could apply to any of the 4 projects, but in fact only really apply to @fluentui/react-components. This is potentially confusing to contributors visiting our repo, and generally a ramp-up headache.
react-components and move all existing rfcs to this folder.
react, react-northstar, or web-components RFCs can be createdsharedPros:
Cons:
react, react-components, react-northstar, web-components.
shared folder under the packages folder for things that are not directly applied to a given project.apps folder in a similar wayNone