[ButtonGroup][material-next] Add ButtonGroup component
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 99.1k
- Forks
- 32.5k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 106
Description
This issue is to track the work for adding the ButtonGroup component to @mui/material-next, moving forward the Material You effort (https://github.com/mui/material-ui/issues/29345)
Material You SegmentedButton (this styles should be used for ButtonGroup) specification: https://m3.material.io/components/segmented-buttons/overview
Migration Guide steps
- Copy component files from material (v5) to material-next: #39739
-
Remove deprecated components and componentsProps props:Skipped, no props to remove - Drop support for ThemeProvider in favor of CssVarsProvider: #40124
- Migrate component to Typescript: #39794
-
Refactor component to use Base UI’s hook if it exists:Skipped, no hooks needed - Implement Material You design specs: #40124
- Add component playground to v5 docs: #40124
Note: This comment will be updated to show the progress and list possible issues.
@DiegoAndai
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the copied ButtonGroup component files in material-next and the Material You SegmentedButton specification. Check the remaining migration items, including CssVarsProvider support, design-spec implementation, and the v5 documentation playground, while consulting issues #40124 and #39794 for context. Done means the component meets the specification and all unchecked checklist items are completed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100