UI Fabric is evolving into Fluent UI

Office Add-ins team

March 20, 2020

We’ve updated the blog post to reflect that the GitHub repo rename is now complete.

What’s in a name? A lot it turns out. And we have a lot of them. Too many? We hear you and agree. That’s one of the key reasons we’re simplifying our story. To collectively rally around a single UI library for our web components—Fluent UI.

Fluent UI written out in bold

 

We’re starting with Fluent, our cross-platform design system. Fluent is the way Microsoft designs and builds digital product experiences, both internally and with our customers and community. 

We’ve evolved Microsoft to speak a common language through a shared design system. Fluent UI will directly connect that effort to a broad set of products, through code, specifically the convergence of our most used web engineering frameworks – Fabric and Stardust. 

On March 20,  we renamed our UI Fabric GitHub repo to reflect our Fluent UI vision. This is step one toward our vision for a more simplified developer ecosystem.

This is step one toward our vision for a more simplified developer ecosystem. 

This is what we mean when we say Fluent is Microsoft’s design-to-code system. We’re bringing design and engineering together more than ever, to contribute to and leverage a shared foundation, and reach our shared goals. We’re not suggesting that one size fits all, and we got here honestly, so we must evolve collectively. 

Our goal is simple—a shared foundation with open source engineering processes to create experience coherence, efficiency, and effectiveness. It enables us to do more with less.  

What’s changing  

Simply put, we merged two Microsoft repositories. UI Fabric and Stardust GitHub repos now live under the Microsoft GitHub organization as Fluent UI.

This allows our teams to collectively work together on a shared code base with a shared set of build and development tools to support our products and community more efficiently. It also allows us to get to a single UI library for Microsoft 365.  

What this means for developers 

Today? We’re working with a goal of avoiding disruption or breaks in the UI Fabric developer experience. You will continue getting a stream of patches and minor releases as we iterate the current major release (version 7). 

Moving forward, we expect to offer regular updates and communication around our major releases. Our next major release will be the first batch of changes in uniting our collective efforts, tentatively targeting summer 2020.

Our intent is to minimize the amount of interruptions to in flight developer workflows. Also, we want to be mindful and incremental in our approach and we’re using this opportunity to signal to the community our incoming changes. 

We’re working with a goal of avoiding disruption or breaks in the UI Fabric developer experience. You will continue getting a stream of patches and minor releases as we iterate the current major release (version 7). 

The following is short FAQ on the potential impact of the repo merge and rename effort: 

Do I need to rename all my package imports to something new? 

NoPackage names will stay the same as a result of the merge and rename effort. Well continue releasing all UI Fabric packages as we do today. Well also alias publish the same packages under a new name, so that at any time you can use the new @fluentui/react package with no breaking changes. 

Do I need to re-clone the repo? 

No. You shouldn’t need to re-clone the repo. Your clones should be redirected correctly. 

Where do I file GitHub issues and pull requests now? 

You can file issues and pull requests in the new microsoft/fluentui repository. Our teams will collectively support them there.

What about the issues and pull requests that were opened before the merge? 

Previous issues and pull requests will be captured in microsoft/fluentui repository. For UI Fabric, contribution history and active pull requests will stay intact. 

Is the current version of UI Fabric still supported? 

Yes. Nothing is changing in our level of support to the community for the library.  

What if I have more questions about the repo merge and rename? 

Reach out to our team on the Fluent UI GitHub repo  File an issue and we’ll be happy to follow up with you.

What does this mean for WinUI and the Fluent Design System within Windows? The Fluent Design System lies at the core of our recommendations for how to build engaging user experiences on Windows and across platforms now, too.  WinUI continues to embody the Fluent Design System as the native user experience platform of Windows.  With the addition of the Javascript-based Fluent UI libraries, you’ll also be able to build more coherent experiences across other platforms and the web, too, and the Fluent Design System will continue to expand.

New updates planned for Fluent UI 

Our next major releases will focus on performance and theming:

Improve runtime performance through styling optimizations. We’re evaluating how we can reduce css-in-js style calculation overhead to improve rendering performance. 

Improve flexibility and composition of components. Leverage React hooks and function components, along side API surface improvements, to give developers more composition options. 

Provide a more flexible, powerful theming system. Extend our list of design tokens and improve our theming tooling to apply your design. 

Eliminate deprecated React API usage. This enables partners to test React concurrent mode rendering, which allows rendering to be interruptible reducing how much the UI thread is blocked during large updates. 

3 people moving around shapes

Still have questions? 

Feel free to reach out to our team with any questions you may have regarding our new collective effort around Fluent UI by filing an issue on the Fluent UI GitHub repository.

 

  • The Fluent UI team 

 

Feedback usabilla icon