---
# System prepended metadata

title: 'April Project Cycle: Sprint 47 & 48 (April 6 - May 1)'
tags: [status]

---

---
robots: nofollow, noindex
tags: status
---
# April Project Cycle: Sprint 47 & 48 (April 6 - May 1)

## Quick links

[Sprint 47 (April 6 - April 17)][sprint47]

[Full VSO backlog][backlog]

[Fluent UI Roadmap](/zS7XP735R76Si87i7aI2Aw)

## Projects on deck for April 
|Project|Status|Contributors|
|---|---|---|
|[Icon convergence](/76eFr1ctRJGcpmicaAt2-Q)|Reviewed|Marija, Shift|
|[Composition](/t2sD1JVBRXCyUDAeSoex5w)|Reviewed|Shift, Marija|
|[UI Builder](/mA-_4BDmTSmKmXNgI19Wrg)|Reviewed|Miro, (Levi)|
|[Dual-screen support in Fluent UI](/8pu12TibTzaBEr0aKCkmxg)|Reviewed|Mak|
|[Focus Zone breaking changes](https://hackmd.io/vzbHx_SbRuG9EkIwtiHbrg)|Ready|Mak|
|[Move to static stylesheets (starting with Avatar)](/gLhhtNFOQh6pydpYDpIV4g?both)|Reviewed|David|
  |[Improving shield process](/uC-b5txATXmxJJVTQE78jQ?both)|Reviewed|Aneesha (author: Jon)|
|[Component Native Eventing Convergence](/8tOxF8KZS7uIN-XDV93CwA)|Reviewed|Ben (author: Jon)|
|[Investigate EventGroup removal](/aBqTIDWIQ2-sgmLvaeQCgg)|Reviewed|Ben (author: Jon)|
|[Improve render perf for V7](https://hackmd.io/QNWExhGfTr2TFZueZCH47A?view)|Reviewed|Xu|
|[Converge build system - move to just](https://hackmd.io/NqFK4pMpRguDGZYQHwykDw)|Reviewed|Elizabeth|
|[Open UI](https://hackmd.io/hHyWmbXzTzWOZPm7coJLTQ)|Ready|Levi|
|[fabric-website updates](#15-fabric-website-package-updates) | Reviewed | Micah

## Week 3 updates

### Icon convergence (Marija, Shift)
Status: Done

Achievements
- migrated all svg icons in the `@fluentui/react-icons`
- added storybook example for showing all icons

Objectives
Nothing for now, some future work we may want to do:
- align APIs for the components between the two versions
- align the context API regarding icons (styles, rtl etc)
- on v0 all icons props were converted to boxes, we should do this for v7 or 8

Learnings
- removing icons from the theme for v0 was really big deal, the budle size for an example with one component went down for 34%

![](https://i.imgur.com/YAMdXth.png)

- handled props should be removed from the v0 side, getNativeProps is a nice replacement

### Composition	(Shift, Marija)
Status

Achievements
DONE:
- converted Attachment* components to use `compose`
- cleanedup static classNames and slotClassNames
- updated createShorthand to be able to create shorthands for any components, not just the first hand fluent

IN_PROGRESS
- in progress, update compose signature to work with for both creating and composing components
- add slots in compose

Objectives
- wrap up the ongoing work

Learnings
- typings are hard.. 


### UI Builder (Miro, Levi)
Status: On-track

Achievements
- You can drag and drop N* components into an interface.
- You can remove components from the UI you've built.
- You can see a tree structure of the designed UI.
- "Build mode" styles better respect component's existing styles
- You can edit props using appropriate form controls.

Objectives
- Improve props editing experience to include more prop types
- Sharable link - a self-contained link which allows you to share your work.
- Style dictionary prototype integration

Learnings

### Dual-screen support in Fluent UI (Mak)
Status: Behind

Achievements
- First PR out that makes Callout and all components that use it underneath dual-screen aware (ContextualMenu, Dropdown, ComboBox, etc.).

Objectives
- Make similar changes to make other components like Modal and Dialog screen aware as well.
- Test with complete set of components.
- Maybe create some tests around this?
    - Ideas on how to do this are welcome since dual-screen is difficult to test.
    - Maybe do some mock ups mimicking dual-screens?

Learnings
- I just want to give a shout out on how well the positioning logic is structured. It helped me get a PR out really fast once I was unblocked.

### Focus Zone contentious changes (Mak)
Status: On-track

Achievements
- Converged 6 out of the 8 props that could be classified as contentious:
    - `restoreFocusRoot`
    - `focusLast`
    - `preventDefaultWhenHandled`
    - `shouldResetActiveElementWhenTabFromZone`
    - `allowFocusRoot`
    - `shouldFocusOnMount`
- Finished the conversion from `EventGroup` to native eventing. 

Objectives
- Finish the conversion of the missing 2 contentious props:
    - `defaultTabbableElement`/`defaultActiveElement`
    - `shouldFocusInnerElementWhenReceivedFocus`
- Need people to review PRs that are out ot be able to merge them.

Learnings
- No new learnings.

### Move to static stylesheets (Avatar)	(David)
Status:


Achievements
* RTL and nested RTL support proven to work
  * Requires a custom postcss plugin
  * Uses load-themed-styles 
![](https://i.imgur.com/mCGPOGU.png)

* StylesheetProvider, useStylesheet separated out for registering stylesheets
* Stylesheet load order based on slots and recomposition order completed
* ThemeProvider to get tokens registering to be consumed by stylesheets
  * Button converted
  * Teams theme converter to css variables 
  
Objectives

* Deep dive with Levi
* Sync on finalizing needed `compose` changes with Marija
* Get code checked in

Learnings

* Huge render perf gains when using only css variables

![](https://i.imgur.com/yajtdlr.png)

* Theming working via css variables, no `useTheme` required

![](https://i.imgur.com/pBeBIeg.png)

### Improving shield process (Aneesha)
Status: On track

Achievements
Gathered feedback from Shield devs, researched other OSS repos like VSCode, Typescript, and finished first draft of proposal. Circulated to Markus, Justin, Paul - starting to get feedback & polish.

Objectives
Finalize proposal - drive the key decisions that need to be made, start implementing process like kicking off backlog review.

Learnings
A couple of the key points I kept hearing:
•	Separate triage and fix jobs - hard to do both simultaneously. 
•	Raise the bar for accepted requests, issues, and questions. 
•	Most rotations end with issues that never get addressed because once devs are off shield which contributes to our increasing issue count too.
•	Cost of hours spent on Shield – could be better spent on these longer term projects that tackle the increase in incoming rate like refactoring, perf.


### Component Native Eventing Convergence (Ben)
Scoped part of eventgroup removal. 

Status: Complete

Achievements
- Submitted and merged pull request to remove EventGroup from ColorRectangle, ColorSlider, and Slider
- Bundle size reduced by 2.8kB for ColorPicker and Slider 🎉
- Also submitted PR to revert a bad change to 'on' that was in my first PR (thanks Elizabeth!)

Objectives
- Project is complete

Learnings
- Learned about the difference between React event objects and Native event objects
- It's easier to fix issues in pull requests before they're merged


### Investigate EventGroup removal (Ben)

Remove EventGroup from the rest of the codebase

Status: On track

Achievements
- Investigated other types of uses of EventGroup in other places in the code
- Created a lightweight drop-in replacement class DOMEventGroup that handles the most common use of EventGroup: subscribing and unsubscribing from native events
- Created a lightweight replacement for EventGroup.raise

Objectives
- Write tests for DOMEventGroup
- Test refactoring changes that replace DOMEventGroup
- Finish and submit removal of EventGroup from a bunch more components
- Investigate replacement of custom events by KeytipManager
- Write up proposal for any remaining changes required to remove EventGroup from DetailsList and KeytipManager

Learnings
- Using a drop-in replacement for EventGroup makes refactoring other components faster and less error-prone than replacing it with a different pattern that has different semantics (disposables array)

### Improve render perf for V7 (Xu)
Status: 

Achievements:
Enabled classname caching for Label, Icon, Contextual Menu, which were previously disabled. These components have improved perf long with other components that uses these components such as Textfield, Dropdown, Checkbox, etc.

Objectives:
- Help on enabling Strict Mode (Concurrent Mode).
- Add proper caching logic for `withSlot`.

Learnings:
- React Concurrent mode.


### Converge build system - move to just (Elizabeth)
Status: 

Achievements
- Lint rules - base on airbnb config
- PR for v0 build scripts to use tsnode
    - Pre-step for running in just

Objectives
- Investigate perf between tsnode and babel
- Move component doc gen utilities integrated with gulp out into seperate package
    - Collab with Hudson (preps for product docs)

Learnings


### Open UI (Levi)
Status: On-track (feels slow)

Achievements
- Added many more specimens for buttons (needs merged)
- Improved concepts display for better analysis (needs merged)

Objectives
- Fix new menu organization
- Add missing anatomies
- Get coverage meter for proposing common anatomy
- Improve concept grouping for better viewing component concepts
- Merge draft process document for staging component proposals (e.g. [TC39 process](https://tc39.es/process-document))

Learnings
- Need resourcing
- Design tokens should probably be listed for each component concept

### Fabric-website updates (Micah)
Status: 

Achievements

Objectives

Learnings

---

## Week 2 updates

### Icon convergence (Marija, Shift)
Achievements
- Merged the PR for the package and the factory
- Ready for merge: SVG icons, and Icon viewer
    - Gets first round ready
    - Conculdes the first iteration for April Cycle
- v0 everything is ready

Objectives
- Up next: Possible perf investigation

Learnings
- General learnings about how things work on Fabric codebase
- handledProps are not necessery, `getNativeProps` is a nice alternative - this simplifies public API
- we should consider extracting rtl & other non theme props in a separte contexts

### Composition	(Shift, Marija)
Achievements
- Open PR convert subcomponents to be compose
- On-track/finishing up

Objectives
- Introduce slots to compose function (next)
    - Next: create RFC

Learnings
- Improve compose signature
- Change shorthand factories to be more flexible 
    - Avoid static linking issues between components
- Issues with typescript

### UI Builder (Miro, Levi)
Status: On-Track

Achievements
- [WIP] You can drag and drop N* components into an interface.
- You can select components and show the props panel.
- Local storage is used to save/load your work.

Objectives
- You can edit props using appropriate form controls.
- You can remove components from the UI you've built.
- Sharable link - a self-contained link which allows you to share your work.
 
Learnings

### Dual-screen support in Fluent UI (Mak)
Status: Blocked

Achievements
- No achievements, completely blocked on work in this area due to API errors in emulator browser.

Objectives
- If unblocked soon, modify positioning logic of v7 to be dual-screen hinge aware and test changes in list of components outlined in project. If still blocked, keep in contact with Edge team and push back on project until API is more stable. 

Learnings
- Take more time before the project starts taking a look at the things we're going to be using if we're dependent on something that is not owned by us so that we notice blockages early and maybe push back on project to another cycle before starting.

### Focus Zone contentious changes (Mak)
Status: On-track

Achievements
- Converged 6 out of the 8 props that could be classified as contentious:
    - `restoreFocusRoot`
    - `focusLast`
    - `preventDefaultWhenHandled`
    - `shouldResetActiveElementWhenTabFromZone`
    - `allowFocusRoot`

Objectives
- Finish the conversion of the missing 3 contentious props:
    - `defaultTabbableElement`/`defaultActiveElement`
    - `shouldFocusOnMount`
    - `shouldFocusInnerElementWhenReceivedFocus`
- Finish the conversion from `EventGroup` to native eventing. 

Learnings
- No new learnings.

### Move to static stylesheets (Avatar)	(David)
Status: On-track

Achievements
- Avatar converted to static stylesheets (mutli-slot, image, status)
    - Avatar, status, image, label all converted to compose components
    - Slots work as in v0 (shorthand, props, JSX, children functions)
    - Working prototype
- Storybook performance addon
    - Compare v0, v7 with raw static stylesheets. "Huge" improvement (more than 50% initial render)
    - 2000 avatars - initial render
        - v7:     2 secs 
        - v0:     1.4 secs
        - static: .7 secs
- Supports child windows!

Objectives
- Unit tests for compose to validate slots work
- Merge with Shift's compose work (this week)
- Provider needs to be factored out into it's own package
- Clean up and actually ship in v0
- For all types of these projects validate in
    - Product (v7 v0)
    - UI Builder

Learnings
- Stylesheets need to be registered in the right order
    - Normally components register things in the order they are defined
    - In react it registers parent to children first

### Improving shield process (Aneesha)
Status: On-track

Achievements
Created [form](https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbR_FUwUnlHydPhrHHlOwb915UMlNINDgyQkpQWlc0T0Q3ODZYWFYwU0MwNi4u) with interview questions and sent it to out to team to collect feedback on Shield rotation and conducted a few in person interviews too.  

Objectives
Gather and analyze the responses to come up with a new proposal for Shield.

Learnings
Lots of common themes I'm starting to notice already from the feedback I've gotten so far (about 4 responded, waiting on the remaining 4-5ish) - like the need to separate the triage & fix jobs, more will be reported on with the proposal.

### Component Native Eventing Convergence (Ben)
Scoped part of eventgroup removal. 

Status: On-track (wrapping up)

Achievements
- Removed event group, and replaced with dispose pattern
    - Color rectangle
    - rectangle
    - slider

Objectives
- PR comming today

Learnings
- Learned about codebase and eventgroup
- Good ramp-up on codebase in general

### Investigate EventGroup removal (Ben)
Remove eventgroup from the rest of the codebase

Status: On-track

Achievements
- Investigation, inventory of other components using eventgroup

Objectives
- Plan for how to remove from the rest of the codebase
- Get started in removing it
- Consider replacing boilerplate code

Learnings
- Previous removal added some biolerplate code
- Other places use more eventgroup features

### Improve render perf for V7 (Xu)
Status: On-track (Time well spent)

Achievements
- Investigate perf profiling result from flamegrill
    - Identified additional bottlenecks
- Issue with customizeable
    - Constatnly mutating style prop on every render (when custom styles are provied)
    - Fixed
    - Improved Button variations signifcantly
    - Improved Command Bar and Nav
- Investigated more styles prop usage
    - Found cases of constantly mutating styles prop
- Wrote up best practices on using styles prop

Objectives
- Deeper look into WAC/ODSP feedback with Fluent UI v7
    - Challenges around perf
- Look into re-enable caching with label and icon

Learnings 
- **[Meta] How can we build conformance test/dev tool around these learnings**
- When we design interfaces we need to pay attention to how it gets used
    - styles prop is easy to fall into bad practices
- Synced with WAC and ODSP to understand pain point using Fluent UI (v7)
- Performance measurement is incredibly helpful
    - Alot of our perf issues could have been caught by flamegrill
    - Storybook addon looks promising (PR open)
    - CI and Inner Loop needs ways to measure perf
- Talking to customers is super valuable
    - Understanding mistakes they made
    - Hearing their feedback about the code and dev experience
- Customers today fight with their perf issues in their code
    - They also want to know our roadmap so they can anticipate what is comming that will help them
    - Publish our roadmap in a wiki page
    - This will help customers and partners prioritize their own work
    - Idea [David]: Epic issue on our issues
        - Pin the issue

### Converge build system - move to just (Elizabeth)
Status: Behind
- Reduce scope, be careful and tactical about what we focus on

Achievements
- Found tslint could be removes from v0 (not in effect)
- PR out for removing I-prefix
    - No breaking changes (I-prefix is deprecated though)
    - ~170 collisions between interfaces and classes (IButton, Button) 
        - If we hit collision just append "Type" e.g. IButton -> ButtonType
            - Should be consistent between components in code base
            - Should avoid future collisions
            - Consider what is done in the open

Objectives
- Meeting to discuss final decision today (difference between v0 and v7)

Learnings
- More to come

### Open UI (Levi)
Status: On-track (Open ended - good progress being made)

Achievements
- Open UI [project spec](https://hackmd.io/hHyWmbXzTzWOZPm7coJLTQ) is ready
- Open UI graduated from a W3 incubator group to a first-class [W3 community group](https://www.w3.org/community/open-ui)
- Shopify's Polaris design system manager officially committed Shopify to participate in Open UI
- 14 total members across 7 companies
- Component proposal template merged
- FastDNA and Fluent UI actively contributing research and proposals
- Multiple W3 telecons have taken place with Chromium platform, FastDNA, and Fluent UI present
- Jon completed Slider research, informed Fluent UI [Slider Spec](https://hackmd.io/PYQAUH90S9-7oT9MBqdRVg)

Objectives
- Add missing anatomies
- Get coverage meter for proposing common anatomy
- Improve concept grouping for better viewing component concepts
- Merge draft process document for staging component proposals (e.g. [TC39 process](https://tc39.es/process-document))

Learnings
- Design tokens should probably be listed for each component concept

### Fabric-website updates (Micah)

Achievements

Objectives

Learnings

---
# Notes from original Planning below

## Projects on-deck
|Project|Status|Contributors|
|---|---|---|
|Tree/Menu uses static styling|Not ready yet|David, Ben? (Jon interested)|
|IE11 support for Fluent UI styling|Not ready yet|David|
|Component Research - Open UI||...|
|[Codemods via TS-Morph](/76saMSaFSZehSuiCqzDmng)|Next Cycle|Jon|


## Project notes & next steps

### Icon convergence
- Proposal: https://hackmd.io/76eFr1ctRJGcpmicaAt2-Q
- Next Steps
    - Measure performance difference between font and svg icons. There are multiple options here
    - We have Fabric font icons available in SVG form
- First iteration seperate packages
    - Merge once we reconclie packages with design

### Composition
- Proposal: https://hackmd.io/t2sD1JVBRXCyUDAeSoex5w
- Next Steps:
    - Need a breaking change story for Fluent Northstar
        - Understand and inventory breaking changes as part of prototype work
        - Investigate providing code mods
        - Compile type breaks will be easier to handle
    - Work with David on Avatar styling work
    - Overlap with merge-styles compose perf updates
        - David, Xu, and Shift to sync
    - [David] Open question about our strategy around forward ref and compose (offline)

### Design to Code
- Proposal: https://hackmd.io/mA-_4BDmTSmKmXNgI19Wrg
- Next Steps:
    - [ ] Sync on sucess criteria with Levi, Miro, Justin, Markus

### Dual-screen support in Fluent UI
- Proposal: https://hackmd.io/8pu12TibTzaBEr0aKCkmxg
- Next Steps:
    - Reach out to EJ regarding this work on the Mobile side
    - Follow up how to converge with v0 (popper) - converge position logic (seperate project)
    - Jon offered help here

### Shield
- Idea
    - [Jon] to work on proposal
    - Retrospective for Shield
    - Follow up with Ideas from earlier [Xu] to share
    - [Aneesha] plan/process to take care of needs backlog review - weekly shield sync

### Focus Zone breaking changes

### Converge utilities (Avatar, Slider)
- Notes:
    - David in the middle of converging Avatar between repos, converging utils
    - Slider shouldn't be too difficult
    - [todo link sheet list of utilities]
    - Include Justin and David in discussion with Ben

### Composition optimization for Merge Styles

### Converge build system - move to just

https://hackmd.io/NqFK4pMpRguDGZYQHwykDw?both

### Move to static stylesheets (starting with Avatar)

### Tree/Menu uses static styling

### IE11 support for Fluent UI styling

# Top of mind for April

### 1. Styling

#### Shaped Projects for April
- Avatar(for example) uses static styling in current and northstar - scaffolded out component to use as a template to follow
- Tree/Menu uses static styling
- IE11 Support for Fluent UI styling

#### Details
- IE11 polyfill testing: stress test to ensure we can lean hard on css variables
    - Define what our testing matrix, UI consistency
        - Low Resource testing - EDU, Surface Gos etc.
        - Screen shot testing (https://screener.io/v2/docs/test-cross-browser)
- Remove javascript object styling
  - Proposal 1: Use existing sass pipeline
  - Proposal 2: Use new pipeline
- Figure out the story for styling converged components and how it ties into shared provider
- Will unblock shipping converged components

### 2. Repo and comms
- **Goal**: Finish major work before April
- Priority: Need to finish in-progress work, close this out. 
- Finish repo move and wiki updates
- **Sprint 46+**: Complete work tracked here: [One Repo - What's left](/6RR8KDQ9RzSpbvD5poAD7A)
- Comms - [Link]()
- Move all fluentui sub-packages off of gulp build system (one build system) [Elizabeth]
    - Needs time from folks, especially Prague to review changes to ensure we don't break folks

### 3. Dual screen
- **April**: Execute on the shaped project
- People: Mak, David has context
- Positioning utility for hinge awareness (included)
- Validate all control are positioned that are hinge aware (included)
- Wiki/documentation creation for (not included - by BUILD?)
    - Testing Fluent UI in a Browser
    - Adopting incremental changes for side by side on dual screens
    - Enhance your Fluent UI web app for Dual Screens
        - Implement the Two Page pattern 


### 4. Fluent UI Specs
- **Sprint 46**: A completed spec and documented guidance (spec template) for influx of more specs.
    - Proposed componet names and props that describe all the design spec variations in the Figma spec.
    - Complete an component update plan for converging v7 and v0 component using the spec created above (utilities, props, etc.)
- :question: [jslone] Does the design spec include Accessibility spec? Can we get an accessibility spec?
- People: Jon, Levi, David

### 5. Open UI - [Backlog](https://dev.azure.com/microsoftdesign/fluent-ui/_backlogs/backlog/fluent-ui%20Team/Epics/?workitem=5201)
- :question: [jslone] Is there a Project that brings together these items, or should we keep them seperate as tasks? 
    - Answer: this is likely organic, tracking list, work in - work out
- :question: [jslone] Is mainly Levi, or should someone else pick it up?
    - Answer: Levi is driver for now, may delegate some things
- Update contributing guide to unblock influx of research page
- Solve the need for specs (plat, react, wc) to be contributed against research pages
- Repo management
    - add a "Process" explaining stages of specs/research
- Community growth
    - constant updates to the contrib guide as we get feedback
    - PR reviews
- More research pages from Fluent UI team
- FastDNA component research plus web component specs
- Weekly hack session w/Nick Rice

### 6. Converged components & utilities

https://docs.google.com/spreadsheets/d/12ChNoWAkkh0ffTbw5uE-pkYKbMbJcMSz93AmW5QiYWc/edit#gid=0

#### Plan:
- Wrap up and ship focus zone [Mak]
    - In Sprint 46 - non-breaking changes
    - In April (shaped project) - breaking changes
- Shaped a project for converging utils in April
    - Avatar/Persona utilities
    - Slider utilities
- [jslone - probably push out] Define meta-work for Specs in April
    - Specs for what components
    - Blocked on Styling getting solved in April
- **Sprint 46**: Continue on agreed plan for converged icon story [Marija]
    - Having all icons work the same across v7 and v0 
    - Goal: One consistent set of icons (2 packages until designers converge on set of icons)
- **April**: Resolve open question on icon subset tool (aka.ms/fabricicons) - Shaped project
    - Code is in a seperate repo
    - Plan to keep this site working
#### Details
- **April - Sprint 47/48**: Can we converge components in April?
    - Blocked on:
        - Component specs
        - Styling story for components 
          - resolve the tech used to inject css
          - move provider to shared package
          - we want to go to css variables
            - we may need ie11 vetting to happen first
        - :question: are there others? **No other hard requirements.**
    - Work: One shared package for Avatar 
- **Sprint 46**: Shaped Project for utilities to converge in April
    - Avatar/Persona utilities
    - Slider utilities

### 7. Performance tooling
- :question: [jslone] Seems like we could use a shaped Project here for April (and more resources) 
- Bundle size stats and gates
- Render time stats and gates
- Bundle/Render in docs

### 8. Accessibility
:::warning
TODO: Paul accessibility plan @paulgildea  
:::
- Bugs from component passes
- Tools to catch issues in Dev Loop and PR Gates

### 9. Design to code
- :question: [jslone] is this later? Important work but we have other stuff we really need first.
1. Shareable product docs
    - Teams Hudson: MVP shareable doc package for products
    - Teams Hudson: Shareable function for generating component info files
    - :question: [jslone] Is this work, coordination, or is there a shaped project we expect here? 
1. UI Builder
    - In progress, ready for MVP scoping and planning
    - [probably out of scope for april - jslone] **Sprint 46**: Create shaped project for April cycle.
    - :question: [jslone & Markus] Who is the customer here?
    - :question: [jslone & Markus] How to reconcile with Figma plugin
    - People: ...


### 10. Design Tokens
- David Zearing / Levi - CSS Variables implemetation in Fluent UI Builder
- David Zuko - Get base theme and utility classes / variables into UI builder


### 11. Upgrade path
- **~~Sprint 46~~**: **Later**: Shaped project for code-mods

### 12. Composition and custom components (?)

### 13. Partners
- :question: [jslone] Can @paulgildea drive the conversation here to understand what is needed and help make sure we don't lose office.com as a customer. 
- Help office.com
- :question: Will this result in office.com rolling thier own stuff? How do we keep them building on our stuff. 

### 14. Performance improvements
- composition work of merge styles (JD's work 30% improvement?)
    - Project, shape with JD
    - Xu might be interested

### 15. fabric-website (package) updates
- New [/fluentui](https://developer.microsoft.com/en-us/fluentui) path is live
- Website has been updated (in both locations) to use new 'Fluent UI' terminology
- Ready to turn on redirect from /fabric to /fluentui
- At redirect will update twitter handle to fluentui and announce the updated site
- Working with iOS, MacOS, Windows React Native content authors to create new content for fabric-website. All work being done in [website-content branch](https://github.com/microsoft/fluentui/tree/website-content)

:::warning
TODO: Are there more?
:::

## More links

[Shared OneNote for eng process][onenote]

[Accessibility Issues](https://dev.azure.com/microsoftdesign/fluent-ui/_queries/query/ab37cec7-fd8f-4828-99ac-d56e65396ada/)





[backlog]:  https://dev.azure.com/microsoftdesign/fluent-ui/_backlogs/backlog/fluent-ui%20Team/Epics
[issues]: https://github.com/OfficeDev/office-ui-fabric-react/issues
[onenote]: https://microsoft.sharepoint-df.com/:o:/t/FluentUIInternal/Ev_x5WbQI6tJmn2s87RzRPMBTG3d0gmYJN6QCpQttOFyzw?e=rnbj9H
[sprint42]:  https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2042
[sprint43]: https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2043
[sprint44]: https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2044
[sprint45]:  https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2045
[sprint46]:  https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2046
[sprint47]:  https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2047
[onelibrary]:  https://dev.azure.com/microsoftdesign/fluent-ui/_workitems/edit/4469
[theming]:  https://dev.azure.com/microsoftdesign/fluent-ui/_workitems/edit/4464
[performance]:  https://dev.azure.com/microsoftdesign/fluent-ui/_workitems/edit/4462
[composition]:  https://dev.azure.com/microsoftdesign/fluent-ui/_workitems/edit/4465
[onerepo]:  https://dev.azure.com/microsoftdesign/fluent-ui/_workitems/edit/4468
[onelib]: https://dev.azure.com/microsoftdesign/fluent-ui/_workitems/edit/4469

