PACKAGE · UI COMPONENTS

@chakra-ui/react

Responsive and accessible React UI components built with React and Emotion

WEEKLY DOWNLOADS 761.4K
STARS 40.4K
FORKS 3.6K
OPEN ISSUES 22
GZIP SIZE 299.1 kB
UNPACKED SIZE 2.6 MB
LAST UPDATED 3mo ago
DOWNLOAD TRENDS

@chakra-ui/react downloads — last 12 months

Download trends for @chakra-ui/react1 download series from Jun 2025 to May 2026. Use left and right arrow keys to inspect monthly values.02.6M5.2M7.7M10.3MJun 2025SepDecMarMay 2026
@chakra-ui/react
ABOUT @CHAKRA-UI/REACT

Chakra UI provides a comprehensive suite of accessible and responsive React UI components designed to accelerate frontend development. It addresses the common challenge of building consistent, user-friendly interfaces by offering a rich set of pre-built components and a flexible styling system. This library empowers developers to create polished UIs without reinventing the wheel for basic elements like buttons, inputs, and layout structures.

The core philosophy of Chakra UI is to prioritize accessibility and developer experience. Built with WAI-ARIA guidelines in mind, its components are designed to be inherently accessible out-of-the-box. The primary audience includes React developers seeking to build modern, inclusive web applications efficiently. Its design system aims for ease of use and customization, making it suitable for both small projects and large-scale applications.

The library's API is built around a `Box` component, which acts as a universal styling primitive, and a collection of specialized components that extend its functionality. It leverages the `css-in-js` paradigm with Emotion, allowing for dynamic styling and themeability directly within React components. Hooks like `useDisclosure` and `useToast` further simplify common UI state management tasks, promoting a declarative approach to building interactive elements.

Chakra UI integrates seamlessly into standard React workflows. It is framework-agnostic but commonly used with popular tools like Next.js and Vite. Its theming system allows for easy customization to match brand guidelines, and its focus on accessibility means it aligns well with modern web development best practices and compliance requirements. The library is well-suited for projects that rely on a consistent and accessible design language.

With 1.3M weekly downloads and 40.4K GitHub stars, Chakra UI is a mature and widely adopted UI library. Its unpacked size is 2.6 MB, with a gzipped bundle size of 276.2 kB, representing a balance between feature richness and performance. The project has an active community and is actively maintained, as indicated by its last update in April 2026, suggesting a stable and evolving ecosystem.

While highly capable, developers should be aware that Chakra UI's `css-in-js` approach, powered by Emotion, might introduce a slight overhead compared to more minimal CSS solutions. For extremely performance-critical applications where every kilobyte counts, or for projects with very specific, non-standard styling needs that don't benefit from a component library's abstraction, alternative approaches might be considered. However, for most use cases, its benefits in speed of development and built-in accessibility outweigh potential minor trade-offs.

WHEN TO USE
  • When building a new React application that requires a robust set of accessible UI components out-of-the-box.
  • When aiming to implement a design system with features like theming, dark mode support, and responsive styles.
  • When leveraging the `Box` component and its direct style prop system for rapid UI development.
  • When integrating with frameworks like Next.js or Vite where component-based architecture is standard.
  • When needing to manage common UI states like modal visibility or toast notifications using hooks like `useDisclosure` or `useToast`.
  • When prioritizing WAI-ARIA compliance and accessibility as a core requirement for user interfaces.
  • When a significant number of UI elements need to adapt to different screen sizes via responsive style props.
WHEN NOT TO USE
  • If you are only building a very simple static page and need minimal styling, plain HTML and CSS might be more appropriate.
  • If your project has extremely strict bundle size constraints and you only require a few basic UI elements, a lighter, more focused CSS library might be considered.
  • When you prefer to manage all styling exclusively through global CSS files or preprocessor variables without using `css-in-js`.
  • If your team is unfamiliar with Emotion or `css-in-js` paradigms and prefers a different styling approach.
  • When you need to integrate with legacy JavaScript frameworks or environments not compatible with React's component model and hooks.

CORRECTIONS

Spot wrong data here?

A short note helps us fix it.

Anonymous · No account · No email back

COMPARISONS 7
@chakra-ui/react vs @floating-ui/react ★ 32.6K · 8.5M/wk @chakra-ui/react vs @mui/material ★ 98.4K · 4.4M/wk @chakra-ui/react vs @headlessui/react ★ 28.6K · 3.1M/wk @chakra-ui/react vs @mantine/core ★ 31.2K · 983.0K/wk @chakra-ui/react vs @ark-ui/react ★ 5.2K · 419.0K/wk @chakra-ui/react vs antd ★ 98.3K · 1.5M/wk @chakra-ui/react vs @radix-ui/themes ★ 8.4K · 305.9K/wk