awesome-react-hooks
Awesome React Hooks Resources
Documentation
Discussions
Tutorials
- "Making Sense of React Hooks" by Dan Abramov
- "From React.Component to hooks" by Octave Raimbault
- "React Hooks: What’s going to happen to my tests?" by Kent C. Dodds
Videos
- 🎬 ReactConf 2018: React Today and Tomorrow by Sophie Alpert and Dan Abramov Official announcement and first demo.
- 🎬 ReactConf 2018: 90% Cleaner React by Ryan Florence
- 🎬 React Hooks: A Complete Introduction by Harry Wolff
- 🎬 React Hooks playlist by Ben Awad
- 🎬 React Hooks playlist by Josh Ribakoff
- 🎬 React Hooks playlist by Michael Chan
Podcasts
Tools
eslint-plugin-react-hooks
hooks.macro
Babel Macros for automatic memoization invalidation- CodeSandbox Starter Kit
- React Hooks Snippets for VS Code
Catalogs
- hooks-by-example Collection of beginner-friendly real world examples of hook usage.
- Hooks.guide Collection of React hooks curated by the community.
- Searchable Collection of React Hooks
- useHooks(🐠) One new React Hook recipe every day.
- Use Hooks A collection of reusable React Hooks.
Packages
@21kb/react-hooks
A set of React Hooks to get hooked on.@rehooks/component-size
React hook for determining the size of a component.@rehooks/document-title
React hook for updating the document-title.@rehooks/document-visibility
React hook for subscribing to document visibility.@rehooks/input-value
React hook for creating input values.@rehooks/local-storage
React hook which syncslocalStorage[key]
with the comp.@rehooks/network-status
React hook for getting network-status.@rehooks/online-status
React Hook for Online status.@rehooks/window-scroll-position
React hook for getting windowx
andy
position.@rehooks/window-size
React hook for subscribing to window size.@staltz/use-profunctor-state
React Hook for state management with Profunctor Opticsconstate
Transform your local state into global state usinguseContextState
anduseContextReducer
.easy-peasy
Easy peasy global state for React.mobx-react-lite
Lightweight React bindings for MobX based on experimental React hooks.promise-hook
React hook for simplifying Promise based data fetching.react-async-hook
React hook to fetch ad-hoc data into your React components.react-declare-form
React hook based declarative form library.react-dom-status-hook
React hook for subscribing to theDOMContentLoaded
event.react-enhanced-reducer-hook
An alternative touseReducer
that accepts middlewares.react-fetch-hook
React hook for conveniently use Fetch API.react-firebase-hooks
A collection of hooks for use with Firebase.react-hanger
A small collection of utility hooks.react-hookedup
A collection of useful React hooks.react-hooks-global-state
A simple global state management.react-hooks-lib
A set of reusable react hooks.react-i18next/hooks
Internationalization for react done right.react-immer-hooks
useState and useReducer using Immer to update state.react-intersection-visible-hook
React hook to track the visibility of a functional component.react-pirate
React lifecycle and utilities hooks.react-powerhooks
Hooks api for react-powerplug components.react-selector-hooks
Collection of hook-based memoized selector factories for declarations outside of render.react-use-data-loader
React hook for loading datareact-use-form-state
React hook for managing form and inputs state.react-use-idb
React hook for storing value in the browser usingindexDB
.react-use
Collection of essential hooks.react-useFormless
React hook to handle forms state.react-usemiddleware
React hook for using existing Redux middlewares (like thunk or saga) withuseReducer
.react-wait
Complex Loader Management Hook for React Applications.react-window-communication-hook
React hook to communicate among browser contexts (tabs, windows, iframes).react-with-hooks
Ponyfill for the proposed React Hooks API.reaktion
useState like hook for global state management.redux-react-hook
React hook for accessing mapped state from a Redux store.rehooks-visibility-sensor
It checks whether an element has scrolled into view or not.resynced
Multiple state management using React Hooks API.rxjs-hooks
An easy way to use RxJS v6+ with react hooks.the-platform
Browser API's turned into React Hooks and Suspense-friendly React elements for common situations.use-abortable-fetch
React hook that does a fetch and aborts when the components is unloaded or a different request is made.use-events
A set of React Hooks to handle mouse events.use-immer
A hook to use immer to manipulate state.use-redux
A hook to bind redux.use-simple-undo
Simple implementation of undo/redo functionality.use-socketio
React hooks to use with https://socket.io/.use-substate
React hook for subscribing to your single app state (works with your current Redux app).use-undo
React hook to implement Undo and Redo functionality.usePosition
React hook to get position top left of an element.useScreenType
Determining screen size type for Bootstrap 4 grid.useScrollSpy
React hook to automatically update navigation based on scroll position.