An open-source standard for building modern, composable, and accessible UI components.
components.build is a formal specification that establishes best practices and guidelines for building open-source UI components for the modern web. Co-authored by Hayden Bleasel and shadcn, this specification aims to help open-source maintainers and senior front-end engineers create components that are:
- Composable - Built with composition over inheritance, easily combined to create complex UIs
- Accessible - WCAG-compliant with proper ARIA attributes and keyboard navigation
- Customizable - Easy to theme and style for any design system
- Performant - Lightweight with minimal dependencies
- Transparent - Full code visibility and ownership
- Well-documented - Clear examples and developer-friendly
While examples use React/TypeScript, the core principles are framework-agnostic and applicable to Vue, Svelte, Angular, and other modern frameworks.
Contributions are welcome! This specification is informed by the open-source community and real-world component libraries.
To contribute, please read the contributing guide.
This project is open source and available under the MIT License.