Skip to content

feat(cli): initial implementation of FluentUI CLI - #36734

Draft
Martin Hochel (Hotell) wants to merge 19 commits into
microsoft:masterfrom
Hotell:fluentui-cli/prepare-for-merge
Draft

Martin Hochel (Hotell) wants to merge 19 commits into
microsoft:masterfrom
Hotell:fluentui-cli/prepare-for-merge

Conversation

@Hotell

Copy link
Copy Markdown
Contributor

Previous Behavior

Fluent UI did not provide a unified CLI for collecting environment/package diagnostics, analyzing API usage, or extracting API metadata from declaration output.

The repository also contained an experimental v8-to-v9 migration documentation verification skill that is not ready to ship with the CLI.

New Behavior

  • Adds the experimental @fluentui/cli package with lazy-loaded yargs commands:
    • report info for environment and installed-package summaries.
    • report usage for Fluent UI API usage analysis with JSON, Markdown, and HTML reporters.
    • metadata for extracting API metadata from package .d.ts output.
  • Adds an Nx generator for scaffolding future CLI commands using the established command-module pattern.
  • Adds CLI documentation, agent guidance, tests, build configuration, and an initial-release beachball change file.
  • Removes the incomplete migrate command and the related v8-to-v9 migration skills so the master-facing CLI contains only supported functionality.

Validation

  • yarn nx run cli:test --skip-nx-cache (14 suites, 182 tests)
  • yarn nx run cli:lint --skip-nx-cache
  • yarn nx run cli:type-check --skip-nx-cache
  • yarn nx run cli:build --skip-nx-cache
  • Verified root and command-level help for report info, report usage, and metadata.
  • Verified migrate is rejected as an unknown argument and is absent from root help.
  • Executed fixture-backed report usage and metadata smoke tests.

Related Issue(s)

None.

Dmytro Kirpa (dmytrokirpa) and others added 19 commits March 2, 2026 15:25
…ands (microsoft#35842)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…icrosoft#35843)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
microsoft#35964)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

📊 Bundle size report

✅ No changes found

@github-actions

Copy link
Copy Markdown

Pull request demo site: URL

@@ -0,0 +1,116 @@
---

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🕵🏾‍♀️ visual changes to review in the Visual Change Report

vr-tests-react-components/Avatar Converged 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Avatar Converged.badgeMask.normal.chromium.png 5 Changed
vr-tests-react-components/Menu Converged - submenuIndicator slotted content 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Menu Converged - submenuIndicator slotted content.default - RTL.submenus open.chromium.png 404 Changed
vr-tests-react-components/Menu Converged - submenuIndicator slotted content.default.submenus open.chromium.png 413 Changed
vr-tests-react-components/Positioning 2 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/Positioning.Positioning end.chromium.png 614 Changed
vr-tests-react-components/Positioning.Positioning end.updated 2 times.chromium.png 192 Changed
vr-tests-react-components/ProgressBar converged 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - Dark Mode.default.chromium.png 34 Changed
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness - High Contrast.default.chromium.png 114 Changed
vr-tests-react-components/ProgressBar converged.Indeterminate + thickness.default.chromium.png 92 Changed
vr-tests-react-components/TagPicker 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-react-components/TagPicker.disabled.disabled input hover.chromium.png 677 Changed
vr-tests-web-components/MenuList 3 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests-web-components/MenuList. - Dark Mode.normal.chromium.png 498 Changed
vr-tests-web-components/MenuList. - RTL.2nd selected.chromium.png 17 Changed
vr-tests-web-components/MenuList. - RTL.1st selected.chromium_2.png 39384 Changed
vr-tests/Pivot - Overflow 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/Pivot - Overflow.Tabs - RTL.chromium.png 4471 Changed
vr-tests/react-charting-AreaChart 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/react-charting-AreaChart.Custom Accessibility.default.chromium.png 11 Changed
vr-tests/react-charting-GaugeChart 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/react-charting-GaugeChart.Basic.default.chromium.png 2 Changed
vr-tests/react-charting-LineChart 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/react-charting-LineChart.Multiple - Dark Mode.default.chromium.png 181 Changed
vr-tests/react-charting-MultiStackBarChart 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/react-charting-MultiStackBarChart.Basic_Absolute.default.chromium.png 359 Changed
vr-tests/react-charting-VerticalBarChart 1 screenshots
Image Name Diff(in Pixels) Image Type
vr-tests/react-charting-VerticalBarChart.Basic - Secondary Y Axis.default.chromium.png 3 Changed

There were 1 duplicate changes discarded. Check the build logs for more information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants