---
tags: meeting-notes
---
# Meeting: Refining work streams
Met to discuss if work streams make sense, how we organize, who drives what.
# Concerns
* work streams are too vague
* features have to be "fit" into things
* sometimes features span multiple work streams
* no clear start and end or tangibles
* projects have a tangible goal and conclusion
# Work streams?

We are redefining this slide^
Design to Code
- UI Builder (is this docs?)
- Figma Plugin
Performance Tooling
- Bundle size stats
- Bundle size PR gate
- Render time stats locally
- Render time PR gate
- Perf charts in docs
- Bundle size charts in docs
- [Flamegrill (scope this..)]
Accessibility Tools
- Dev loop catching issues
- PR Gates
Component Work
- [New components (Table, SideNav, Toast, etc)]
- [Component/utility updates (renames, features, etc)]
- Single react-focus package
Telemetry
- Converge v0 v7 telemetry approaches
- Split screen support
Theming
- CSS Variable Styling System
- compose() function and model
Docs & Ecosystem
- Info JSON Generator
- Allow M365 product teams to discover/share components
- Upgrade path w/ codemods
- Simplified new repo scaffolding
- Templates for "new package" or "new component"
- Packaged and auto updated
CI/Eng Sys
- Converge the repos
- [Github Bot scoped projects]
[Docs Mathieu]
- Ship new public website
UNKNOWN STUFF
- Open UI
- FastDNA web components will be built in Open UI specs first
- Shared component schemas will go here
- Shared design tokens will go here
- npm package definitions
- Specs for components
- Icon story (@uifabric/icons, file type icons, product icons)
- Working with {partner} to help with {thing}
- repo deprecations cleanup
# Ideas
current tactical
v0 tactical
design to code
performance - should this be in current or v0 tactical?
theming
composition
one repo
one library
update path
shield & bot
ecosystem & docs
# What are we releasing
8.0 major release done by June
### oufr aliases to fuir
oufr:
/lib/index.ts - export * from fuir/lib/index
/lib/Button.ts - export * from fuir/lib/Button;
then scaffold fuir-next:
fuir-next:
/lib/index.ts - export * from fuir/lib/index
/lib/Button.ts - export * from fuir/lib/Button;
/lib/FocusZone.ts - export {FocusZone} from react-focus-next;
### Performance
* Removing/simplifying larger utilities (EventGroup, Async, BaseComponent)
* Unify utilities
* get rid of lodash
* Async class
* See more here: https://docs.google.com/spreadsheets/d/12ChNoWAkkh0ffTbw5uE-pkYKbMbJcMSz93AmW5QiYWc/edit#gid=0
* Moving to hooks and function components
* Drive this with current code and also with v0.
* Composition, state
* start simple: toggle or checkbox, ship it
* dropdown and combobox?
* contextualmenu (is this jon?)
* Break up *Button into Button, MenuButton, and SplitMenuButton. Most buttons really do not need all of the extra ContextualMenu, FocusZone, etc stuff.
* Finish up breaking changes to remove deprecated API usage in React to unblock concurrent mode testing for partners.
* Elizabeth
:::warning
[jslone] Need to add resourcing to perf tooling
:::
### Sync with design
* Specs (/specs)
* Token/theming improvements (ie11 compatable)
* Interop of theming with v0 and v7 (only one theming story)
### Major work to be rationalized
* v0 uses Fela, v7 uses merge-styles
* We need a path to css variables
* The path needs to help any framework team build ui
* Maybe we could go back to scss and BEM with css variables now
* Provider vs Customizer, Customizations, createTheme ... converge.
* focus styling
* what-input vs ms-Fabric--isFocusVisible
* Fabric component itself... Box? is it just ThemeProvider?
* ...then, 31 overlapping components...
### Beyond 8 (Nov)
Replacing css-in js with css variables - now that partners are getting closer to dumping IE11 this year, we are starting to define what this looks like without dropping theming and gaining a lot of perf. This is a major change so we need to make sure we do right. Theming is really hard even with css in js; so leveraging the platform would be ideal.
We also have partners looking for styling solutions like fabric-core that aren't framework specific. Variables would give us a lot of flexibility to offer customizable styling solutions that could apply a theme, even for static page scenarios.