Skip to content

Select language

Current language: English

React Components

Source: https://github.com/brillout/awesome-react-components at 66b2758c4808
License: CC0-1.0
Read the English original

🚀 Absolutely Awesome React Components & Libraries

Section titled “🚀 Absolutely Awesome React Components & Libraries”

This is a list of AWESOME components. Nope, it’s NOT a comprehensive list of every React component under the sun. So, what does “awesome” mean? Well:

  • It solves a real problem
  • It does so in a 🦄 unique, 🦋 beautiful, or 🏆 exceptional way. (And it’s not super popular and well-known… no point in listing those.)
  • It has recent code commits!

Look for a 🚀 for truly amazing projects. And look for quickie maintainer commentary and reviews in (italic parens) after some listings of note.

See also: Awesome React Frameworks.

Maintainers:

  • @petebray, author of Fluxguard — monitor PROD website changes.
  • @brillout, author of Vike — a fast Vite-based React framework that is flexible, lean, community-driven and dependable.

Please review our contributing guidelines. We keep this list fresh by requiring all PRs to remove one or more non-awesome entries from this list. Please ONLY PR a new resource if you are ALSO removing one.

Back to top ⬆️

  • AG Grid - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components.
  • fortune-sheet - An online spreedsheet component that provides out-of-the-box features just like Excel.
  • gigatables-react - Sorting, pagination/infinite scroll, global/column search, AJAX CRUD, and more.
  • Handsontable - demo - docs - Data Grid with spreadsheet-like UI supporting React, Angular, TypeScript and JavaScript.
  • jqwidgets-react-grid - Filtering, Pagination, Grouping, Export to Excel, PDF, CRUD and more.
  • MUI X Data grid - demo/docs - Fast and customizable data grid with advanced features for power users and complex use cases.
  • react-data-grid - Excel-like grid.
  • ReactGrid - demo/docs - Add spreadsheet-like behavior to your app
  • revo-grid - demo/docs - Powerfull Data Grid for React / AngularJS / Vue / Web Components with advanced customization.
  • SheetXL – A high-performance spreadsheet grid. TypeScript, ESM, Node/browser, Excel-compatible functions.
  • SVAR React DataGrid - demo - docs - React DataGrid with in-cell editing, tree data, context menu, virtual scrolling, etc.
  • ka-table - demo - Customizable table component with sorting, filtering, grouping, virtualization, editing etc.

  • mantine-datatable - demo/docs - Lightweight table component for Mantine UI applications, with lots of features

  • material-table - demo/docs - Built on Material UI, plus: grouping, tree data, expandable rows, export, inline editing

  • mui-datatables - Built on Material UI. Search, styling, filtering, resize/hide columns, export, print, select/expand rows.

  • react-data-table - demo/docs - accessible, responsive, themable, declaratively configurable table with sorting, selectable rows, expandable rows, pagination

  • TanStack Table - demo - Headless UI for building powerful tables & datagrids

  • react-table-library - demo - React Table Library — an almost headless table library — for building better tables.

  • rsuite-table - demo/docs - A table component that supports virtualized.

  • DevExtreme React Grid - High-performance plugin-based data grid for Bootstrap and Material Design.

  • Smart React Grid - Fast and feature-complete data grid with Material Design.

  • simple-table - demo - docs - Lightweight, fast and feature rich. Sorting/filtering, virtualization, tree data, nested headers, pinned columns, customized styling etc.

  • KendoReact Grid - Powerful data grid component with 100+ ready-to-use features like paging, sorting, export to Excel, and more.

  • Material-React-Table - A fully featured Material UI V5 implementation of TanStack React Table V8, written from the ground up in TypeScript

  • @egjs/react-infinitegrid - npm - demo - A module used to arrange card elements including content infinitely according to various layout types.
  • react-lazyload - Lazyload your Component, Image or anything else where the performance matters.
  • react-list - A versatile infinite scroll React component.
  • @af-utils/virtual - demo/docs - Render large scrollable lists and grids.
  • react-window - demo - React components for efficiently rendering large lists and tabular data
  • virtua - demo - A zero-config, fast and small (~3kB) virtual list component for React, Vue and Solid.

Display overlay / modal / alert / dialog / lightbox / popup

  • react-aria-modal - A fully accessible and flexible React modal built according WAI-ARIA Authoring Practices.
  • react-modal - Accessible modal dialog component for React.
  • @paratco/async-modal - Simple async modal handler for React.
  • reoverlay - demo - The missing solution for managing modals.
  • sweetalert2 - demo/docs - A beautiful, responsive, highly customizable and accessible (WAI-ARIA) replacement for JavaScript’s popup boxes. Zero dependencies.
  • sweetalert2-react-content - Official SweetAlert2 enhancer adding support for React elements as content

Toaster / snackbar — Notify the user with a modeless temporary little popup

  • react-notifications-component - demo - Highly customizable and easy-to-use component for notifications.
  • notistack - demo - docs - Highly customizable notification snackbars (toasts) that can be stacked on top of each other
  • react-local-toast - demo - docs - show feedback linked to particular component instead of app-wide toasts.
  • react-toast - demo - docs - Minimal toast notifications.
  • 🚀 react-toastify - demo - best bet out there at the moment. Hooks support. No refs.
  • react-confirm-lite - demo - is a lightweight, promise-based confirmation dialog for React with built-in Tailwind CSS support. It’s designed to be as simple to use as react-toastify, while remaining fully customizable.
  • reapop - A React & Redux notifications system.
  • react-hot-toast - demo - Smoking hot Notifications for React. Lightweight, customizable and beautiful by default.
  • Sonner - An opinionated toast component for React.

Menus / sidebars

Fixed headers / scroll-up headers / sticky elements

Loaders / spinners / progress bars — Let the user know that something is loading

Display data in charts / graphs / diagrams

  • cmdk - Fast, composable, unstyled command menu for React.
  • kbar - demo - Fast, portable, and extensible cmd+k interface.

Display a tree data structure

  • json-edit-react - demo - Highly configurable JSON/Object tree viewer and editor
  • react-arborist - demo - A Full-Featured Tree View: headless, virtualized, multi-selectable, drag-n-drop, keyboard navigation, search
  • react-complex-tree - demo - docs - Unopinionated Accessible Tree Component with Multi-Select, Drag-And-Drop and Search
  • he-tree-react - demo - docs - Tree, customizable UI, flat data, tree data, drag-n-drop, placeholder for drop, foldable, checkbox, virtualized.

Ways to navigate views

  • react-dailymotion - Dailymotion player component for React.
  • react-player - A react component for playing a variety of URLs, including YouTube.
  • react-soundplayer - Create custom SoundCloud players with React.
  • react-youtube - React.js powered YouTube player component.
  • video-react - A web video player built for the HTML5 world using React library.
  • material-ui-audio-player - Audio player for material ui design.
  • react-vision-camera - Camera component for React using getUserMedia. We can use this component for computer vision tasks like barcode scanning, text recognition, etc.
  • react-barcode-qrcode-scanner - Barcode and QR code scanner component for React. It uses react-vision-camera to access the camera and Dynamsoft Barcode Reader to read barcodes.
  • google-map-react - Universal google map react component, allows render react components on the google map.
  • mapkit - A library for integrating Apple Maps using MapKit JS, with annotations, overlays, and search.
  • pigeon-maps - demo - ReactJS Maps without external dependencies.
  • react-geosuggest - A React autosuggest for the Google Maps Places API.
  • react-leaflet - React components for Leaflet maps.
  • react-map-gl - A React wrapper for MapboxGL-js and overlay API.
  • react-svg-map - demo - A set of components to display an interactive SVG map.

Display time / date / age

Display images / photos

Display icons / icon set / emojis

  • iconify-react - Over 40k icons from 50+ icon sets, including all popular icon and emoji sets.
  • react-icons - Svg react icons of popular icon packs using ES6 imports.
  • react-open-doodles - Awesome free illustrations as react components.
  • react-icomoon - With react-icomoon you can easily use the icons you have selected or created in icomoon.
  • tabler-icons-react - A set of over 450 free MIT-licensed high-quality SVG icons.
  • Lucide - Beautiful & consistent icon toolkit made by the community. Open-source project and a fork of Feather Icons.

Display a control element to paginate

Display parsed markdow source

Sketch input using Canvas or SVG

  • react-konva - React Konva is a JavaScript library for drawing complex canvas graphics with bindings to the Konva Framework.
  • react-sketch - A Sketch tool for React based applications, backed-up by FabricJS
  • react-sketch-canvas - Demo Freehand vector drawing tool for React using SVG as canvas. Accepts input from Mouse, touch, and graphic tablets
  • react-heat-map - A lightweight calendar heatmap react component built on SVG, customizable version of GitHub’s contribution graph.
  • html2canvas - Take screenshots of any part of your web page using Javascript.

Let the user enter data

Date picker / time picker / datetime picker / date range picker

Masked inputs, specialized inputs; email / telephone number / credit card / etc.

Autosuggest / autocomplete / typeahead

  • coloreact - A tiny Color Picker for React.
  • react-color - Is a tiny color picker widget component for React apps.
  • react-colorful - A tiny (2,5 KB), dependency-free, fast and accessible color picker component.
  • react-input-color - React input color component with hsv color picker.

Let the user select something (e.g. a tag) while typing

Let the user add multiple tags in a single input

  • react-beautiful-dnd - Beautiful and accessible drag and drop for lists with React
  • react-dnd - Drag and Drop for React.
  • react-drag-sizing - “Drag to resize” (sizing) as React Component.
  • react-draggable - React draggable component.
  • react-dragula - Drag and drop so simple it hurts.
  • react-dropzone - Simple HTML5 drag-drop zone with React.js.
  • react-movable - Accessible and minimalistic (<4kB gzipped) library for vertical drag and drop in lists and tables.
  • react-sortable-pane - Sortable and resizable pane component for React.
  • neodrag - Multi-framework libraries for dragging. Choose your framework, the dragging API behavior will stay the same.

Let the user define an order on a list

Image manipulation

  • @anatoliygatt/numeric-stepper - demo - A fully themeable and accessible numeric stepper component.
  • interweave - React library to safely render HTML, filter attributes, autowrap text with matchers, render emoji characters, and much more.
  • react-designer - Easy to configure, lightweight, editable vector graphics in your react components.
  • react-upload-gallery - React for Upload Image Gallery. Drag & Drop, Sortable, Customize.

Back to top ⬆️

Components to layout the app’s UI

Back to top ⬆️

Animate transitions

Back to top ⬆️

Set of components + responsive layout system

  • ant-design - demo/docs - A UI Design Language from China. Individual components available.
  • atlaskit - Atlassian’s official UI library, with components from badge to tree table.
  • base web - Base Web is a foundation for initiating, evolving, and unifying web products.
  • carbon - demo/docs - A design system built by IBM.
  • cdbreact - demo - docs - Elegant UI Kit library and reusable components for building mobile-first, responsive websites and web apps.
  • chakra-ui - demo/docs - Simple, Modular & Accessible UI Components for your React Applications.
  • ChatUI - demo/docs - The UI design language and React library for Conversational UI
  • CoreUI for React - demo/docs - Open Source UI components library.
  • evergreen - demo/docs - Evergreen React UI Framework by Segment.
  • fluentui - UX frameworks for creating beautiful, cross-platform apps that share code, design, and interaction behavior.
  • gestalt - demo/docs - A set of components that supports Pinterest’s design language.
  • grommet - The most advanced UX framework for enterprise applications.
  • kokonut-ui - Free Modern and Customizable UI components.
  • Mantine - demo/docs - A fully featured library with 100+ hooks and components with native dark theme support
  • orbit - Components for building travel oriented projects.
  • flowbite-react - Open-source UI component library based on React, Tailwind CSS, and Flowbite.
  • primereact - A complete UI Framework with 50+ components featuring material, bootstrap and custom themes.
  • radix-ui - Unstyled, accessible components for building high‑quality design systems and web apps.
  • react-bootstrap - Bootstrap components built with React.
  • react-foundation - Foundation as React components.
  • reakit - demo/docs Toolkit for building accessible rich web apps
  • searchkit - React UI components / widgets. The easiest way to build a great search experience with Elasticsearch.
  • semantic-ui-react - The official Semantic-UI-React integration.
  • semi-design - demo/docs - A modern, comprehensive, flexible design system.
  • shadcn/ui - demo - docs - Beautifully designed components that you can copy and paste into your apps.
  • shineout - demo - Chinese-friendly set of components: form elements, navigation, table, tree, tree select drop-down etc.
  • Tremor - demo - docs - Open-source components to build charts and dashboards.
  • untitled-ui-react - demo - Beautifully crafted collection of components built with React Aria and Tailwind CSS.
  • 🚀 Material UI - Full suite of components. Build your own design system, or start with Material Design.
    • Autocomplete - Accessible autocomplete, combobox, multiselect
    • Material Icons - 1,000+ SVG material icons.
    • Modal - Accessible modal dialog component.
    • Slider - Accessible slider component.
    • Table - table with sorting, selecting, pagination, virtualized.
    • Tree View - Accessible tree view component for React.
  • react-essence - Essence - The Essential Material Design Framework.
  • react-materialize - Material design for react, powered by materializecss.
  • react-toolbox - A set of React components implementing Google’s Material Design.
  • mdbootstrap - React Bootstrap with Material Design
  • antd-mobile - Configurable Mobile UI from China.
  • Ionic React - Ionic Framework: easily build Android, Desktop and Progressive Web Apps with one code base.
  • OnsenUI - demo/docs - Mobile app framework with Material and flat (iOS) designs. Based on Web Components.
  • blueprint - demo - docs - UI toolkit for building complex, data-dense web interfaces for desktop (not mobile) applications.
  • dataminr-react-components - Collection of reusable React Components and utility functions.
  • shards-react - docs/demo - A beautiful and modern React design system. Freemium.
  • aframe-react - Build virtual reality experiences with A-Frame and React.
  • react-admin - Build admin user experiences on top of REST and GraphQL services.
  • refine - demo - docs - Build data-intensive applications in no time. It ships with Ant Design System, an enterprise-level UI toolkit.
  • matrix-card - demo - Simplest possible component to generate matrix rain style cards.
  • rsuite - demo/docs - Suite of components for “enterprise system products”.
  • lens-ui - docs - A Suit of components focused on simplicity.
  • Tailwindadmin - docs - A collection of Ready-made ShadCN UI components you can directly plug into your React/Next.js projects.

Back to top ⬆️

Report computed styles

Report when a component becomes visible/hidden

Determine and report measurements of an element

Turn user input into actions

Set meta tags, , children of <head>

Render an element at an arbitrary DOM node

  • react-layer-stack - Simple but ubiquitously powerful and agnostic layering system for React.
  • react-portal - React component for transportation of modals, lightboxes, loading bars… to document.body.

A/B tests, experiments, …

Back to top ⬆️

Libraries that help with code design

Data flow / data management / data stores / components state / data flow

  • baobab-react - React integration for Baobab.
  • cerebral - A state controller with its own debugger.
  • effector-react - React bindings for effector, an effective multi-store state manager.
  • fireproof - demo - docs Pure JS, zero dependency, CRDT database - runs in the browser and connects to any cloud or backend
  • RxDB - demo - docs A fast, local first, reactive Database for JavaScript Applications
  • fluxible - A pluggable container for universal flux applications.
  • kea - High level architecture for React apps.
  • react-i13n - A performant, scalable and pluggable approach to instrumenting your React application.
  • react-redux - Official React bindings for Redux.
  • redux-batched-actions - Reducer + action to reduce actions under a single subscriber notification.
  • redux - Predictable state container for JavaScript apps.
  • reselect - Selector library for Redux.
  • resourcerer - Declarative data-fetching framework for REST APIs
  • synergies - docs A performant and distributed context-state library for creating reusable React state logic by synergyzing atomar context pieces.
  • zustand - docs - A fast bearbones state-management solution using simplified flux principles and boilerplate-free hook api.
  • teaful - Tiny, easy and powerful React state management
  • data-driven-forms - A declarative way for building forms with all the functionality.
  • formik - Build forms without tears and supports Validation in ease.
  • formsy-react - A form input builder and validator for React JS.
  • Phormal - Docs & Demos - Responsive, multilingual forms with built-in validation, support for dark mode and right-to-left languages.
  • react-hook-form - React hooks for form validation without the hassle.
  • react-jsonschema-form - A React component for building Web forms from JSONSchema.
  • react-client-validation - Simple and super lightweight validation for React.
  • react-final-form - Subscription-based form state management
  • react-formawesome - Complex library for creating awesome forms.
  • surveyjs - The advanced Survey and Form library
  • Formily - High performance, extensible, and Typescript friendly
  • hook-form-react - docs - A lightweight, dependency-free solution React hooks for form validation.

Component properties asynchronously fetched over the network

  • react-refetch - A simple, declarative, and composable way to fetch data for React components.
  • redux-connect - Provides decorator for resolving async props in react-router.
  • axios-react - HTTP client component for React.
  • apollo-client - A simple caching client for any GraphQL server and UI framework.
  • react-relay - Relay is a JavaScript framework for building data-driven React applications.
  • query - docs Powerful asynchronous state management, server-state utilities and data fetching for TS/JS, React, Solid, Svelte and Vue.
  • aesthetic - A powerful type-safe, framework agnostic, CSS-in-JS library for styling components, whether it be plain objects, importing stylesheets, or simply referencing external class names.
  • aphrodite - It’s inline styles, but they work!.
  • inline-style-prefixer - Run-time Autoprefixer for Inline Style Objects.
  • @classmatejs/react - A class name focused component builder with a syntax like styled components and the sugar of cva’s variants.
  • react-container-query - Modular responsive component.
  • react-responsive - Media queries in react for responsive design.
  • reactponsive - Responsive components and hooks.
  • styled-components - Visual primitives for the component age.
  • stitches - CSS-in-JS with near-zero runtime, SSR, multi-variant support.
  • hypernova - A service for server-side rendering your JavaScript views.
  • isomorphic-style-loader - Isomorphic CSS style loader for Webpack.
  • react-server - React framework with server render for blazing fast page load.
  • rill - Universal web application framework.
  • webpack-isomorphic-tools - Server-side rendering for your Webpack-built applications (e.g. React).

Scaffold / starter kit / Yeoman generator / stack ensemble / seed

  • create-react-app - Create React apps with no build configuration.
  • crisp-react - Express integration in TypeScript with support for multiple SPAs and pitfall avoidance.
  • cra-template-redux-auth-starter - A Redux auth starter boilerplate for CRA.
  • electron-react-boilerplate - Live editing development on desktop app.
  • elegant - docs - demo - A simple React framework for rapidly building beautiful and expressive web applications with Next.js, Tailwind CSS, and Markdown loading.
  • extensive-react-boilerplate - Boilerplate with Next.js, Auth (Sign in, Sign up, Reset password, Confirm email, Refresh Token), Material UI, React Hook Form, I18N, File uploads (support local and Amazon S3 drivers), Tests, CI.
  • generator-starhackit - Full-stack starter kit.
  • nwb - CLI tool and devDependency for React apps & components and npm modules.
  • nx - Next generation build system with first class monorepo support and powerful integrations.
  • PBandJ - Zero-Config Reusable Component Framework.
  • react-hot-boilerplate - Minimal live-editing boilerplate for your next ReactJS project.
  • rockpack - Simple solution for creating React application with SSR, bundling, linting, testing within 5 minutes.
  • create-react-dependency - Create react dependencies with no build configuration.
  • phoenix - A simple boilerplate that helps you make your react application with Server Side Rendering & Localization support.
  • react-enterprise-starter-kit - Highly Scalable and Performant Awesome React Starter Kit for an enterprise application with a very easy maintainable codebase.
  • Tailwindadmin - Free Shadcn Dashboard Template Built On React and Tailwind CSS comes with Multiple-framework support
  • react-inlinesvg - An SVG loader component for ReactJS.
  • react-godfather - A new way to write Functional Components, without Hooks.
  • react-vvm - A new approach to MVVM in React, to enforce clean separation of concerns, reduce boilerplate, and automatic re-render optimization for scalable UI logic.
  • react-call - Call your React components.
  • redux-auth-patch - Complete token authentication system for react + redux that supports isomorphic rendering.
  • redux-search - Redux bindings for client-side search.
  • tcomb-react - Alternative syntax for PropTypes.
  • react-universal-hooks - :tada: support react hooks everywhere (Functional or Class Component).

Back to top ⬆️

Internationalization / L10n / localization / translation

  • react-i18next - Internationalization for react done right. Using the i18next i18n ecosystem.
  • react-intl - Internationalize React apps.
  • react-localized - Internationalization for React components based on gettext format.
  • react-translate-maker - Universal internationalization (i18n) open source library for React.
  • react-intl-universal - demo Internationalize React apps. Not only for React.Component but also for Vanilla JS.
  • @tolgee/react - docs – Web-based localization tool enabling users to translate directly in the React app they develop
  • js-lingui - docs – A readable, automated, and optimized (5 kb) internationalization for JavaScript.

Back to top ⬆️

  • react-infinite-grid - A React component which renders a grid of elements.
  • react-infinite - A browser-ready efficient scrolling container based on UITableView.
  • react-lazy-load - React component that renders children elements when they enter the viewport.
  • react-lazyload - Lazyload your Component, Image or anything matters the performance.
  • react-virtualized - React components for efficiently rendering large lists and tabular data.
  • iSSR - The easiest way to move your React application to Server-Side Rendering. Handles Side Effects and synchronizes State.
  • react-esi - A library to boost SSR performance by exposing React components as Edge Side Includes (ESI) fragments

Back to top ⬆️

  • enzyme - JavaScript Testing utilities for React.
  • jest-cli - Painless JavaScript Testing.
  • react-unit - Lightweight unit test library for ReactJS.
  • redux-test-recorder - A redux middleware to automatically generate tests for reducers through ui interaction.
  • rut - React testing made easy with react-test-renderer. Supports DOM and custom renderers.
  • unexpected-react - Plugin for unexpected to enable testing the full React virtual DOM, and also the shallow renderer.
  • playwright enables reliable end-to-end testing for modern web apps.
  • fluxguard - PROD change monitoring that highlights all DOM + design changes.
  • react-inspector - Power of Browser DevTools inspectors right inside your React app.
  • reactotron - A CLI and OS X app for inspecting your React JS and React Native apps.
  • Tail Lens - Tailwind editor in browser : Inspect, edit, preview, copy.

Back to top ⬆️

  • DataFormsJS JSX Loader - Small JavaScript Compiler for quickly converting JSX to JS directly on a web page.
  • html-to-react-components - Extract annotated portions of HTML into React components as separate modules.
  • htmltojsx - Automatically AJAXify plain HTML with the power of React. It’s magic!.
  • jsonx - React JSON Syntax.
  • mozaik - Mozaïk is a tool based on nodejs / react / d3 / stylus to easily craft beautiful dashboards.
  • react-blessed - A react renderer for blessed.
  • jsondiffpatch-react - JSON diffing.
  • iron-session - Secure, stateless, and cookie-based session library.
  • gatsby - Transform plain text into dynamic blogs and websites using React.js.

Back to top ⬆️

  • BCMS - API-based, open-source, self-hostable content management system for Gatsby, Nuxt and Next.
  • crisp-bigquery - Full stack Google BigQuery with Express in TypeScript.
  • react-server-routing-example - Universal client/server routing and data with AWS DynamoDB.

HagiCode

HagiCode is an agentic coding workspace. Rich, convenient UI interactions make planning, agent execution, and project work approachable and easy to navigate, creating an engaging development experience.

Explore an engaging development experience through rich, convenient UI interactions.

Visit HagiCodeRead the documentation
  • SmartOpenSpec workflows turn intent into an executable path, from proposal to design, tasks, and a shipped change.
  • EfficientMulti-agent execution keeps research, implementation, and review moving in parallel, across several repositories and the Agent CLIs you already use.
  • InterestingRich, convenient UI interactions make planning, agent execution, and project work approachable and easy to navigate.

Download for Windows

Get it from Microsoft StoreAll downloads

Turn ideas into shipped software.

HagiCode is an agentic coding workspace. OpenSpec workflows plan the change, multi-agent execution carries it out, and Hero Scenario makes the long run visible, so ideas become shipped software.

Smart
OpenSpec workflows turn intent into a path from proposal to shipped change.
Efficient
Multi-agent execution runs research, build, and review in parallel.
Fun
Rich UI interactions make planning, agent work, and projects easier to follow.

Leave Awesome Site?

You are about to visit an external website. We do not control its content or privacy practices.

Destination

Continue to website