docs/react-v9/contributing/rfcs/react-components/convergence/focus-and-iteration-towers-2.0.md
contributors: @khmakoto @xugao @miroslavstastny @jurokapsiar @dzearing @levithomason @paulgildea
This RFC covers a proposal for a process to track and bring clarity to the engineering work required to build a Fluent UI Next component
We have been working for a bit on convergence and leaning the towers between libraries formerly known as Stardust and Fabric. We've made good progress on defining the component model to use, and are now making progress on styling and theming components built upon it.
The larger problem we face is mostly one of time, scope, and focus. We need to deliver a substantial set of converged baseline components to partners that work in both Teams and Office applications. To succeed here we need to improve our focus and iteration speed.
We were planning to converge through building new converged components and folding them back into both /react-northstar and /react libraries. Folding these components, concepts, and utilities back into both libraries, however, is difficult, time consuming, and results in challenges for the Teams application.
In general, we realized that while possible, folding converged components back into /react-northstar and /react seemed like a distraction and an unnecessary step that just perpetuates the two separate libraries.
We propose that instead of growing /react and /react-northstar to be similar over time, we simply focus on creating an independent set of converged components. These components can later fold into /react to ship to the masses, but the near-term focus should be on unblocking partners with independent components. These components are not a re-write, they will bring forward the work already done in Fabric and Stardust. They also will work well in existing Fabric or Stardust based applications. However, they also will function independently of either existing library, and not require a particular version of /react or /react-northstar.
This independent set of components must support:
Visual representing this: