README
Build Accessible React Apps with Speed β‘οΈ
Chakra UI provides a set of accessible, reusable, and composable React components that make it super easy to create websites and apps.
Looking for the documentation? π
For older versions, head over here => https://v0.chakra-ui.com
Latest version (v1) => https://chakra-ui.com
Features π
- Ease of Styling: Chakra UI contains a set of layout components like
Box
andStack
that make it easy to style your components by passing props. Learn more - Flexible & composable: Chakra UI components are built on top of a React UI Primitive for endless composability.
- Accessible. Chakra UI components follow the WAI-ARIA guidelines specifications
and have the right
aria-*
attributes. - Dark Mode π: Most components in Chakra UI are dark mode compatible.
Support Chakra UI π
By donating $5 or more you can support the ongoing development of this project. We'll appreciate some support. Thank you to all our supporters! π [Contribute]
Individuals
Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
Testimonials
People throw React component libraries and design systems at me regularly. This might be the best one I've seen. The APIs are simple but composable and the accessibility on the couple components I looked is complete.
Great work @thesegunadebayo, really inspiring work. β Ryan Florence
Awesome new open-source component library from @thesegunadebayo. Really impressive stuff! β Colm Tuite
This is incredible work. Amazing job Segun! β Lee Robinson
Chakra UI is glorious! I love the consistent use of focus styling and the subtle animation β Guillermo β²
Installing Chakra UI
To use Chakra UI components, all you need to do is install the
@chakra-ui/react
package and its peer dependencies:
$ yarn add @chakra-ui/react @emotion/react@^11 @emotion/styled@^11 framer-motion@^5
# or
$ npm i @chakra-ui/react @emotion/react@^11 @emotion/styled@^11 framer-motion@^5
Usage
To start using the components, please follow these steps:
- Wrap your application with the
ChakraProvider
provided by @chakra-ui/react.
import { ChakraProvider } from "@chakra-ui/react"
// Do this at the root of your application
function App({ children }) {
return <ChakraProvider>{children}</ChakraProvider>
}
Optionally, you can wrap your application with the ColorModeProvider
so you
can toggle between light and dark mode within your app.
- Now you can start using components like so!:
import { Button } from "@chakra-ui/react"
function Example() {
return <Button>I just consumed some β‘οΈChakra!</Button>
}
CodeSandbox Templates
- JavaScript Starter: https://codesandbox.io/s/chakra-ui-javascript-lzzg9
- TypeScript Starter: https://codesandbox.io/s/chakra-ui-typescript-pomi8
- NextJS TypeScript Starter: https://codesandbox.io/s/chakra-ui-next-js-typescript-kxvyr
Templates create-react-app
Check out our guide for
information on how to use our official create-react-app
templates.
Contributing
Feel like contributing? That's awesome! We have a contributing guide to help guide you.
Our docsite lives in a separate repo. If you're interested in contributing to the documentation, check out the docsite contribution guide.
Contributors β¨
Thanks goes to these wonderful people
(emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
Testing supported by
License
MIT Β© Segun Adebayo