MetaMask / MetaMask/metamask-design-system
[React Native]: Create `Tabs` component in shared UI component library
Open
@brianacnguyen is already working on this.
Since Feb 13, 2025.
team-design-system
- Dominant language
- TypeScript
- Stars
- 37
- Forks
- 14
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 60
Description
Description
Create a reusable Tabs component for the shared UI component library. The component should follow the design standards outlined in the Tabs Audit & Insights FigJam Board. This task is part of the migration to the new shared UI component library, ensuring consistency with the conventions set by existing components.
Technical Details
-
Component Implementation:
- Build using React Native and TypeScript.
-
Integration:
- Ensure compatibility with twrnc or any relevant design system tokens (e.g., spacing, colors, typography).
- Align with global typography and accessibility standards outlined in the Tabs Audit.
-
Testing:
- Integrate unit tests using Jest and React Testing Library.
- Add accessibility tests to ensure ARIA compliance for keyboard and screen reader users.
-
Documentation:
- Provide detailed usage examples for different variants, sizes, and states.
- Include a storybook story for each prop and for default configurations.
Acceptance Criteria
- The
Tabscomponent should match the design specs in the Tabs Audit & Insights FigJam Board. - Component implementation must cover the following:
- Proper alignment with typography and spacing standards.
- Compatibility with all design system color tokens and themes.
- Inclusion of hover, focus, and active states.
- Unit tests must cover at least 80% of the component’s functionality, including interactivity and accessibility.
- Component must be reviewed and approved by both engineering and design teams.
- Documentation for the component should be added, covering usage, available props, and examples.
- Ensure all aspects meet the Definition of Done
References
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.
Assessment
This issue has not been assessed yet.