---
robots: nofollow, noindex
tags: status
---
# August Project Cycle: (August 3 - August 28)
## Quick links
[Fluent UI Roadmap](/zS7XP735R76Si87i7aI2Aw)
## Projects for August
|Project|Status|Contributors|
|---|---|---|
|[Strict mode compliance (function component conversions part 2)](/lNERyu8eQZG84OKVmSw93Q) | [github project](https://github.com/microsoft/fluentui/projects/35) continued in sept| Elizabeth |
| [v8 release details](/jnJVbaYLTVePY5xkN_X6Dg?both) | continued in sept | Elizabeth, Xu |
|Doc clean up, First run experience, github readme and wiki (wc,v7,v0)| PR open |Levi|
|Integrate button into teams| Morphed into Sept |Levi, David|
|[UI Builder](/YWMxmuXPQDWWueakhXWcTg)| Continued in Sept |Lukas|
|[Collaborate on hooks approach](/eU066QN-Tgq1IJWQzJOXvA)| Continued in Sept |Marija|
|[UI Builder, ](/5nq725ewQ4mclX51ekIk9Q) validate token: Corner Radius|small|Xu|
|[ThemeProvider support for button(v8)](https://hackmd.io/NPPqOc6rThmXNLP7aAVx3A)|Reviewed|Xu|
|[Button variations](https://hackmd.io/mOVPAt4YSLeSojzaXFD3nQ)|Needs Review|Xu|
|Compose bug fixes/tweaks - v8| Continued in Sept |David|
|[Button - Flight in Ribbon](https://hackmd.io/9N7AO0frR2u27-a1WAF95g)| Waiting on WAC |David|
|Button migration guide for v8|tracked in v8 tasks|David, Mak|
|[Cards scenario for office.com: ](https://hackmd.io/X8zPltRoRlux3M5fjsLDBA) Avatar, Icon, common Card proof of concepts, Link, Tooltip [lead up to Ignite-Office.com](https://hackmd.io/dJBoKptKQ4WOa1aBevyfaw#)| Avatar PR out, Image finished |Mak, Shift, Ben, Roman?|
|[IE11 polyfill work and testing](https://hackmd.io/W81dCAkrTxeSte-ODBoexQ)| PR out, move to soft fork|Tomi|
|Codemod to compat layer and how-to codemod doc| PR out today |Jon|
|Support concurrent mode in Pickers|[github project](https://github.com/microsoft/fluentui/projects/35) move floating picker to v8|Jon|
|[CodeMods for props - Intern edition](https://hackmd.io/6qiWVLzpTuqXVRtQGDf6Yg?view)|Wrapping up|Trip|
|Use new button in OUFR|Starting soon|Tomi|
|Shield|N/A|Mak|
## Other updates
- Issues standing up new packages in v0. Need to manually build packages first.
- Marija to book a meeting later this week
## Strict mode compliance (function component conversions part 2) (Elizabeth)
### Week 3 - 8/17
#### Achievements
- More progress on components
- All work items tracked
#### Objectives
- Lock down who is doing Lists
- Focus on PR review
- Ask: If there is a function component PR up on a component you know, please prioritize reviewing
#### Learnings
### Week 2 - 8/11
#### Achievements
- Organizing and reviewing PRs
- Good progress from Michael
#### Objectives
- Follow up with Caleb
- Follow up on Lists (Thomas)
- Justin to send mail to coordinate
#### Learnings
## v8 release details (Elizabeth, Xu)
### Week 3 - 8/17
#### Achievements
- [Ask] Need help landing plans and work for v8 release
- We have estimates for most of v8 work, setting up work in github project/milestones to track
- Breaking down work into "Need by beta snap", "Need by Beta", "Need by release"
- Tentative date of early Novemeber for final v8 release (Beta in Mid October)
#### Objectives
- Need to work out uifabric package renames, major lockstep?
- Finish adding work items to github
#### Learnings
### Week 2 - 8/11
#### Achievements
- Really close to identifying full set of work
- Ironing out logistical aspects
- Follow up with details offline
#### Objectives
- Identifying a list of work, need owners for areas, and estimates
- e.g.:
- Button
- Codemods
- Pickers
- Ask: If you have issues that you know need to go into v8 use fluent UI v8 label on issues
#### Learnings
## Doc clean up, First run experience, github readme and wiki (wc,v7,v0) (Levi)
### Week 3 - 8/17
#### Achievements
- Outline of update to readme
- Highlight 3 centers of gravity (react, react-northstar, web-components)
- Please review: [GitHub Readme / Wiki updates](/Swm709j1TxqaFW6Pb7q9EA)
#### Objectives
- Stand up PR for changes to repo
#### Learnings
### Week 2 - 8/11
- Not started
#### Achievements
#### Objectives
#### Learnings
## UI Builder (Lukas)
### Week 4 - 8/24
#### Achievements
- Finished all of the tasks except for one
#### Objectives
- Merge open PR
- Finish up the remaining task
#### Learnings
### Week 3 - 8/17
#### Achievements
- Added new tasks proposed by Levi & Shift
- Merged significant portion of the tasks
#### Objectives
- Finish up the integration of Fabric
#### Learnings
- TODO: Problem with JSON.stringify, talk to Miroslav
### Week 2 - 8/11
#### Achievements
- Mostly done with tasks in project
- Identified some new issues
#### Objectives
- Finishing tasks in project
- TODO: Levi, David, Lukas go over style in iframe challenge
#### Learnings
- Challenges with Fabric components (styles not applying in Iframe)
## Collaborate on hooks approach (Marija)
### Week 3 - 8/17
#### Achievements
- react image pull request merged
- v0 component - button - replace compose functionality
- Feedback discussed w/ David
- FYI: New react utilities package
#### Objectives
- Finish off v0 button doc page and scope
- Changes to how children work in components
#### Learnings
### Week 2 - 8/11
#### Achievements
- Productive week, hooks in react image, draft PR
#### Objectives
- Experimenting with how accessibility can be tested
- Sync tomorrow to discuss slots
- Next steps work on more v0 components
#### Learnings
## ThemeProvider support for button(v8) (Xu)
### Week 4 - 8/25
#### Achievements
- ThemeProvider to support `applyTo` prop (apply theme to body)
- scaffolded new `@fluentui/theme` package
- Postponing v0 -> v8 theme conversion since it's not v8 blocking
- RE: apply theme to target window: David added `react-window-provider`
#### Objectives
- On remaining work related to documentation, deprecation & update theme designer, i will make the changes after branching v7.
- Going to focus on preping Checkbox/Slider/Toggle/Link/Pivot for v8 release this week
### Week 3 - 8/17
#### Achievements
- Support v7 theme to work with new buttons
- Updated default theme to be Fluent
#### Objectives
- create `@fluentui/themes` package and move default/other themes there.
- `ThemeProvider` to `applyToBody`
- v0 theme to button tokens conversion
- Follow up on applying theme to targetWindow [David/Levi]
- TODO: David setup a call
#### Learnings
### Week 2 - 8/11
#### Achievements
- On track, supporting passing v7 theme, and replace functionality of customizer
#### Objectives
- Supporting v7 theme on new button, conversion.
#### Learnings
## IE11 polyfill work and testing (Tomi)
### Week 3 - 8/17
#### Achievements
- Built out polyfill package
#### Objectives
- Testing it on the components we have / demo app
- Update our documentation on how to use polyfill (how to use, scope of polyfill)
- Create IE11 screener tests
#### Learnings
- Screener tests run on chrome... can we use them on IE11?
- issue where a classname got mutated, not an issue for our components
- TODO: log a bug ^
### Week 2 - 8/11
#### Achievements
- On track, identified two options
1. use polyfill repo, testing hotfix on button component
2. modifying loadTheme styles
#### Objectives
- Cover options next week
#### Learnings
## Codemod to compat layer and how-to codemod doc (Jon)
### Week 3 - 8/17
#### Achievements
* Completed a small pr to improve the way that codemods handle results.
#### Objectives
* Write basic how to, will need to collaborate with Trip.
#### Learnings
### Week 2 - 8/11
#### Achievements
- On vacation
#### Objectives
#### Learnings
## Support concurrent mode in Pickers (Jon)
### Week 3 - 8/17
#### Achievements
* Basic Pickers updated
* Began work on updating other pickers (floating)
#### Objectives
* Complete picker work by updating other pickers to be concurrent
#### Learnings
* Code is compactified and cleaner removing the deprecated methods! I was surprised and happy to find out that was the case.
### Week 2 - 8/11
#### Achievements
- Focus for this week
#### Objectives
#### Learnings
## CodeMods for props - Intern edition (Trip)
### Week 4 - 8/25
#### Achievements
* Added documentation for how to write codemods. Currently getting feedback on the process.
* Refined codemod generator described in week 3 to be more user-friendly and work better with logging.
#### Objectives
* Incorporate as much feedback as possible before the end of the week.
* If possible, add config support for running codemods (i.e. filtering codemods).
#### Learnings
### Week 3 - 8/17
#### Achievements
* Created a codemod generator that can either interpret json (see week 2 for example), or direct user input and spit out a codemod. Here's an example of creating my own codemod with no json involved:
``` typescript
// Rename 'checked' to 'toggled' in Button
const renamePropCodeMod = function(file: SourceFile) {
// Example body of a code mod. Easily customizable by a developer!
const tags = findJsxTag(file, 'Button');
renameProp(tags, 'checked', 'toggled');
};
const shinyNewCodeMod = createCodeMod('Rename checked to toggled in Button', renamePropCodeMod);
// run shinyNewCodeMod with runMods() on some source files!
```
#### Objectives
* Spend the next ~week running on codebases to identify implemention holes
* Get some feedback on the current codemod writing process.
#### Learnings
* Lots of practice with closures!
### Week 2 - 8/11
#### Achievements
* Synced with David for some examples of how to streamline the Dev experienct WRT codemods.
* Example json config for a mod that renames props:
```jsonld=
{
"name": "@fluentui.react",
"upgrades": [
{
"name": "Renaming 'isDisabled' to 'disabled' in Dropdown",
"type": "renameProp",
"options": {
"from": {
"importName": "Dropdown",
"paths": ["office-ui-fabric-react/lib"],
"toRename": "isDisabled"
},
"to": {
"replacementName": "disabled"
}
}
}
}
```
#### Objectives
* Begin creating a generic codemod config file that Devs can enter data about their desired codemod into, and write mod-runner for said config file.
* Flexibility will be an important thing to keep in mind here.
#### Learnings
* It's hard to do work when you don't have power :(
## Office Ribbon convergence integration
Full status here: https://hackmd.io/9N7AO0frR2u27-a1WAF95g
### Week 8 8/25
#### Achievements
* `@fluentui/react-window-provider` scaffolded
* `WindowProvider` and `useWindow`/`useDocument` hooks added to standardize how to access/override accessing window and documents contextually
* To create a path towards styling convergence, start normalizing css in js to support either emotion and mergeStyles
* Deprecated `selectors` wrappers in mergeStyles
* Added `makeStyles` per customer feedback, will try `Button` styles with it to evaluate sass/cssinjs when done more staticly.
* Variants support in PR
#### Objectives
* Complete variants PR
* Merge branch (dzearing/button3) into master to try flight in dogfood
* Update splitbutton props conversion
* Update splitbutton styles
#### Learnings
* Bundle impact of button in ribbon evaluated and deemed OK to merge without async imports
* Scott helping with the merge
* Paired w Levi on Button in v0; almost there!
* Resolved "children" vs "content" concern (children rendered in content slot, unless a function, which will replace slots)
* Resolved using "as" as the slot; container slot definitions to move to `components`.
* Levi working on PR to update composition/Button
### Week 7 - 8/17
#### Achievements
* Flight flag checked in to master
* Flight integration checked into branch
* Scott from WAC helping to address bundle splitting before merging into master.
* Initial SplitButton integration in branch
#### Objectives
* Merge branch (dzearing/button3) into master to try flight in dogfood
* Finish variants and bring back over
* Update splitbutton props conversion
* Update splitbutton styles
#### Learnings
* Refs are incompatible (OOUI polluted with refs which are typed to the class components.)
* [TODO] Track this as part of function component conversion, especially when working with partners.
* Last batch of compose updates has been great to integrate
### Week 6 - 8/11
#### Achievements
* Compose utilities updated with initial implementation
* Button updates merged to new pattern
* SplitButton PR merged, now supporting updated pattern ([PR here](https://github.com/microsoft/fluentui/pull/14018))
* Avatar branch rescaffolded with new pattern
#### Objectives
* PR in OOUI up
* Dogfood flight set up
* Variants initial PR posted
#### Learnings
* Some questions on shorthand slots
* Typings are difficult
### Week 5 - 8/4
#### Achievements
* Collaborated with Levi on compose alternative
* Spent last week getting the idea in code
* Summary here: https://github.com/microsoft/fluentui/pull/14268/files?short_path=a61ecc1#diff-a61ecc141219991eeacc7b2af69d57b3
* Updated Button, ToggleButton, and MenuButton onto new pattern
* PR up on Thursday, plenty of feedback by Monday
* Wrapped up much of the feedback, but still have a few to discuss
* Meeting with Prague on Friday
#### Objectives
* Get PR issues addressed and merged to unblock OOUI updates
* Sync with Prague on PR
* Make adjustments, prove out contentious areas
* Update OOUI with latest bits
* Get variants PR out
## Card project
### Week 3 - 8/17
#### Achievements
- **Avatar - Ben**
- Getting up to speed with figma design
- PR Incomming (changes for design, and slots, and tokens)
- Out starting tommorrow till end of next week
- **Image - Shift**
- Session with David on tokens work
- Blocker with design reqs removed
- Session with Kay from design tomorrow
- goal: close this item out this week
- **Mak**
- No updates, on shield
- Over the next week, adding stealth variant to button
- Might touch on Card PR (still in draft)
#### Objectives
#### Learnings
### Week 2 - 8/11
#### Achievements
* **Image - shift**
* A PR to implement design's spec is opened [PR](https://github.com/microsoft/fluentui/pull/14441). Requires the discussion with design team about requirements.
* **Avatar - Ben**
* Took over David's work on the avatar branch that has the new react-avatar package with the mostly complete Avatar component
* **Mak**
* Reviewing with Design, specs for:
* Text
* Avatar
* Project proposal for august (linked above)
#### Objectives
* **Avatar - Ben**
* Polish up react-avatar to get it ready to merge
* Make updates based on the design spec (may or may not complete before getting the react-avatar package merged)
* Worked with David on some TypeScript magic for compose
* Note: Vacation starting 8/19 (goal, merge initial PR by this week)
#### Learnings
* **Ben** - Typings are fun! Sort of.
## Migration guide for v8 (David, Mak, Elizabeth)
### Week 3 - 8/17
- Not Started
- Push out to next month.
#### Achievements
#### Objectives
#### Learnings
### Week 2 - 8/11
- Not Started
#### Achievements
#### Objectives
#### Learnings
## Project (Person)
### Week 3 - 7/20
#### Achievements
#### Objectives
#### Learnings
---
# More projects for Later
|Project|Status|Contributors|
|---|---|---|
|Add v0 Debug & TelemetryGuard to Teams||Can this happen later?|
|Add perf telemetry to v7||Later|
|Script/Codemod to rename all the IPrefix interfaces [#10266](https://github.com/microsoft/fluentui/issues/10266)|||
## 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
[sprint53]: https://dev.azure.com/microsoftdesign/fluent-ui/_sprints/backlog/fluent-ui%20Team/fluent-ui/Sprint%2053
[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