React Components Catalog
Inspired by the awesome-react-components but lists only the components I or contributors use themeselves and can recommend. I believe 15 date picker components for React can’t be awesome and you still have no idea which one you should use.
UI components
Component libraries
- react-bootstrap — great project but the CSS is from original Bootstrap, so never use in a project with custom design.
- material-ui — components that implement Google’s Material Design.
- semantic-ui-react — framework that helps create beautiful, responsive layouts.
Select
- react-select — filtering, multiple selection, etc.
Date/time picker
- react-day-picker — flexible date picker.
Autocomplete
- react-autosuggest — WAI-ARIA compliant.
Autosize textarea
- react-textarea-autosize — replacement for the textarea element which automatically resizes textarea as content changes.
Masked input
- react-input-mask — input masking with attention to small usability details with cursor position, copy-paste, etc.
Rich text and code editing
- react-codemirror2 — CodeMirror component.
Markdown
See #1 for discussion.
- simple-markdown — very small (4 KB, ~10 times smaller than alternatives), no HTML support.
- markdown-to-jsx — a simple-markdown fork with HTML support, GFM task lists and syntax highlight.
Tables
- Reactabular — very flexible framework to work with tables.
Grids and whitespace
- react-spaceman — manage whitespace inside components and between components.
- Rebass Grid — responsive React grid system built with styled-components
- Stack Styled — make stack layouts easy
Miscellaneous
- Formik — form state management
- react-group — render React children with a separator
- react-icons — Font Awesome, Material icons, etc. as React components.
- react-pagify — very flexible but simple pagination, has a Bootstrap skin.
- react-sortable-tree — drag-and-drop sortable component for nested data and hierarchies.
Hotkeys
- react-hotkeys — declarative hotkey and focus area management.
UI utilities
- Reach Router — routing.
- react-document-title — Declarative, nested, stateful, isomorphic document.title.
- react-dnd — drag and Drop.
- react-scroll — scroll component.
- react-intl — React components and an API to format dates, numbers, and strings, including pluralization and handling translations.
- react-virtualized — components for efficiently rendering large lists and tabular data.
Utilities
- decko — bind, debounce and memoize decorators.
Dev tools
- react-styleguidist — Style guide generator and a workbench for developing components.
Other tools
- Spectacle — React based presentation library.
Removed components
These components were removed from the list, I can no longer recommend them. Feel free to send a pull request if the issue was fixed.
react-dimensions — higher-order component to get dimensions of containerabandonedreact-combo-keys — global hotkeysreact-hotkeys supports global hotkeys nowreact-codemirror — CodeMirror component— replaced with react-codemirror2react-router — routing— replaced with Reach Router
You may also like
Contributing
Suggestions are welcome: just create an issue if you know something better than what I use.
Author and license
Artem Sapegin, a frontend engineer at Omio and the creator of React Styleguidist. I also write about frontend at my blog.
CC0 1.0 Universal license, see the included License.md file.