Top Related Projects
A collection of awesome things regarding React ecosystem
Curated List of React Components & Libraries.
Awesome React Native components, news, tools, and learning material!
📋 React Hooks for form state management and validation (Web + React Native)
React Hooks — 👍
🤖 Powerful asynchronous state management, server-state utilities and data fetching for the web. TS/JS, React Query, Solid Query, Svelte Query and Vue Query.
Quick Overview
Awesome React Hooks is a curated list of React hooks resources, including tutorials, articles, and libraries. It serves as a comprehensive collection for developers looking to learn about and implement React hooks in their projects. The repository is community-driven and regularly updated with new and relevant content.
Pros
- Extensive collection of React hooks resources in one place
- Well-organized and categorized for easy navigation
- Regularly updated with new content and contributions
- Includes both educational materials and practical libraries
Cons
- May be overwhelming for beginners due to the large amount of information
- Some listed resources might become outdated over time
- Quality of individual resources may vary
- Lacks in-depth explanations or comparisons between different hooks
Code Examples
This repository is not a code library, but rather a curated list of resources. Therefore, there are no specific code examples to provide.
Getting Started
As this is not a code library, there are no specific getting started instructions. However, users can access the repository at https://github.com/rehooks/awesome-react-hooks and browse the various categories of resources listed there.
Competitor Comparisons
A collection of awesome things regarding React ecosystem
Pros of awesome-react
- Broader scope, covering various aspects of React ecosystem beyond hooks
- More comprehensive, with a larger collection of resources and tools
- Includes sections on React components, tutorials, and related libraries
Cons of awesome-react
- Less focused on React hooks specifically
- May be overwhelming for developers looking for hook-specific resources
- Updates less frequently than awesome-react-hooks
Code Comparison
awesome-react-hooks:
import { useState } from 'react';
function Counter() {
const [count, setCount] = useState(0);
return <button onClick={() => setCount(count + 1)}>{count}</button>;
}
awesome-react:
class Counter extends React.Component {
state = { count: 0 };
render() {
return (
<button onClick={() => this.setState({ count: this.state.count + 1 })}>
{this.state.count}
</button>
);
}
}
Summary
awesome-react-hooks is a focused repository specifically for React hooks, providing a curated list of resources, tutorials, and custom hooks. It's ideal for developers looking to deepen their understanding of hooks or find specific hook implementations.
awesome-react, on the other hand, is a more comprehensive resource covering the entire React ecosystem. It includes information on hooks but also extends to components, libraries, tools, and tutorials for React development in general.
Choose awesome-react-hooks for a targeted exploration of React hooks, or awesome-react for a broader overview of the React ecosystem.
Curated List of React Components & Libraries.
Pros of awesome-react-components
- Broader scope, covering a wide range of React components
- More comprehensive, with a larger collection of resources
- Includes UI libraries and toolkits, not just individual components
Cons of awesome-react-components
- Less focused on a specific aspect of React development
- May be overwhelming for developers looking specifically for hooks
- Requires more time to navigate and find relevant components
Code Comparison
awesome-react-components:
import { Button } from 'react-bootstrap';
function MyComponent() {
return <Button variant="primary">Click me</Button>;
}
awesome-react-hooks:
import { useState } from 'react';
function MyComponent() {
const [count, setCount] = useState(0);
return <button onClick={() => setCount(count + 1)}>{count}</button>;
}
Summary
awesome-react-components offers a comprehensive collection of React components, libraries, and tools, making it a valuable resource for developers seeking a wide range of UI solutions. However, its broad scope may be less suitable for those specifically interested in hooks.
awesome-react-hooks, on the other hand, provides a focused list of React hooks, making it easier for developers to find and implement specific hook-based solutions in their projects. While it may not cover the full spectrum of React components, it excels in its specialized area.
Awesome React Native components, news, tools, and learning material!
Pros of awesome-react-native
- Broader scope, covering various aspects of React Native development
- Larger community and more frequent updates
- Includes resources for both beginners and advanced developers
Cons of awesome-react-native
- Less focused on a specific topic, which may make it harder to find relevant information
- May include outdated or deprecated resources due to its broader scope
- Requires more maintenance to keep all sections up-to-date
Code comparison
awesome-react-hooks:
import { useState, useEffect } from 'react';
const useWindowSize = () => {
const [size, setSize] = useState([window.innerWidth, window.innerHeight]);
useEffect(() => {
const handleResize = () => setSize([window.innerWidth, window.innerHeight]);
window.addEventListener('resize', handleResize);
return () => window.removeEventListener('resize', handleResize);
}, []);
return size;
};
awesome-react-native:
import React from 'react';
import { View, Text, StyleSheet } from 'react-native';
const MyComponent = () => (
<View style={styles.container}>
<Text style={styles.text}>Hello, React Native!</Text>
</View>
);
const styles = StyleSheet.create({
container: { flex: 1, justifyContent: 'center', alignItems: 'center' },
text: { fontSize: 18, fontWeight: 'bold' },
});
Summary
While awesome-react-hooks focuses specifically on React hooks, awesome-react-native covers a wider range of topics related to React Native development. The former is more targeted and easier to navigate for hook-related information, while the latter provides a comprehensive resource for React Native developers but may require more effort to find specific information.
📋 React Hooks for form state management and validation (Web + React Native)
Pros of react-hook-form
- Focused specifically on form handling, providing a comprehensive solution
- Performance-optimized with minimal re-renders
- Built-in validation and error handling
Cons of react-hook-form
- Limited to form-related functionality
- Steeper learning curve for complex form scenarios
- May be overkill for simple forms
Code Comparison
react-hook-form:
import { useForm } from "react-hook-form";
const { register, handleSubmit } = useForm();
const onSubmit = data => console.log(data);
<form onSubmit={handleSubmit(onSubmit)}>
<input {...register("firstName")} />
<input type="submit" />
</form>
awesome-react-hooks (using a custom hook):
import { useInput } from "./hooks";
const firstName = useInput("");
<form onSubmit={() => console.log(firstName.value)}>
<input {...firstName} />
<input type="submit" />
</form>
Summary
react-hook-form is a specialized library for handling forms in React applications, offering optimized performance and built-in features. awesome-react-hooks, on the other hand, is a curated list of various React hooks for different purposes, providing a broader range of functionality but less depth in specific areas like form handling.
While react-hook-form excels in complex form scenarios, awesome-react-hooks offers more flexibility for general-purpose hook usage. The choice between them depends on the specific needs of your project and the complexity of your forms.
React Hooks — 👍
Pros of react-use
- Comprehensive collection of ready-to-use hooks
- Well-documented with examples and TypeScript support
- Actively maintained with frequent updates
Cons of react-use
- Large package size due to numerous hooks
- May include unnecessary hooks for some projects
- Steeper learning curve due to extensive API
Code Comparison
react-use:
import { useToggle, useList } from 'react-use';
const [isOn, toggleOn] = useToggle(false);
const [list, { push, filter }] = useList([1, 2, 3]);
awesome-react-hooks:
// No direct code comparison available as awesome-react-hooks
// is a curated list of hooks from various sources
Key Differences
awesome-react-hooks is a curated list of React hooks from various sources, serving as a directory for developers to discover and explore different hook implementations. It doesn't provide hooks directly but links to external resources.
react-use, on the other hand, is a comprehensive library of ready-to-use React hooks. It offers a wide range of hooks for various purposes, all within a single package.
While awesome-react-hooks provides flexibility in choosing specific hooks from different sources, react-use offers convenience with its all-in-one approach. The choice between them depends on whether you prefer a curated list of resources or a complete package of pre-built hooks.
🤖 Powerful asynchronous state management, server-state utilities and data fetching for the web. TS/JS, React Query, Solid Query, Svelte Query and Vue Query.
Pros of Query
- Comprehensive data fetching and state management solution
- Built-in caching and automatic background refetching
- Extensive documentation and active community support
Cons of Query
- Steeper learning curve due to its more complex API
- Potentially overkill for simple projects or small-scale applications
- Requires additional setup and configuration
Code Comparison
Query:
const { data, isLoading, error } = useQuery('todos', fetchTodos)
if (isLoading) return <div>Loading...</div>
if (error) return <div>Error: {error.message}</div>
return <ul>{data.map(todo => <li key={todo.id}>{todo.title}</li>)}</ul>
awesome-react-hooks (using a basic fetch hook):
const [data, setData] = useState(null)
const [isLoading, setIsLoading] = useState(true)
const [error, setError] = useState(null)
useEffect(() => {
fetchTodos().then(setData).catch(setError).finally(() => setIsLoading(false))
}, [])
Summary
Query offers a more robust solution for data fetching and state management, with built-in caching and automatic refetching. However, it comes with a steeper learning curve and may be excessive for simpler projects. awesome-react-hooks, on the other hand, provides a collection of reusable hooks that can be easily integrated into existing projects, but may require more manual implementation for advanced features like caching and background updates.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
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
- "State Management with React Hooks - No Redux or Context API" by André Gardi
- "How to Fetch Data with React Hooks?" by Robin Wieruch
- Primer on React Hooks
- React Hooks - A deeper dive featuring useContext and useReducer
- "Using Custom React Hooks to Simplify Forms" by James King
- Testing of a Custom React Hook for Fetching Data with Axios
- The Guide to Learning React Hooks (Examples & Tutorials) by Eric Bishard
- "Sanely Testing React Hooks" by Dave Cooper
- React by Example: Hooks
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
- ð¬ Custom Hooks in React by Tanner Linsley
Podcasts
- React Hooks - Syntax (Nov 14th, 2018)
- React Hooks 1 Year Later - Syntax (Mar 18, 2020)
- Why should I use React Hooks? - Syntax (Dec 7th, 2020)
Tools
eslint-plugin-react-hookshooks.macroBabel Macros for automatic memoization invalidation- CodeSandbox Starter Kit
- React Hooks Snippets for VS Code
hook-into-propsHelper to build HOCs using hooks. Useful for using hooks with class components.react-universal-hooksReact Universal Hooks: just use****** everywhere, Functional or Class Components- Jooks Unit-test your custom hooks by mocking React's Hooks API (useState, etc.)
react-hooks-testing-libraryLibrary to create unit tests for custom React hooks.
Catalogs
- @react-hookz/web - A library of general-purpose React hooks built with care and SSR compatibility in mind.
- ahooks A collection of React Hooks specifically aiming at enterprise applications.
- beautiful-react-hooks(ð¥) A collection of hooks to speed-up your components and custom hooks development.
- Captain hook Modest list of hooks.
- crooks A collection of unique React Hooks.
- hooks-by-example Collection of beginner-friendly real world examples of hook usage.
- Hooks.guide Collection of React hooks curated by the community.
- react-recipes ð©âð³ Collection of essential hook recipes ð¥
- Searchable Collection of React Hooks
- Sunflower(ð») Collection of React Hooks returning components of antd.
- useHooks(ð ) One new React Hook recipe every day.
- Use Hooks A collection of reusable React Hooks.
Packages
@21kb/react-hooksA set of React Hooks to get hooked on.@d2k/react-devtoReact hook for Dev.to API requests@d2k/react-githubReact hook for Github API requests@d2k/react-localstorageReact hook that handles updating and clearing localstorage values while keeping them in sync with your components.@elgorditosalsero/react-gtm-hookReact hook for handle easily the Google Tag Manager.@hookstate/coreModern, very fast and extendable state management for React.@jzone/react-request-hookð¶React hook for custom requestï¼compatible with various lib, support redux@kevinwolf/formalElegant form management primitives for the react hooks era.@koale/useworkerâï¸ Running heavy task in background using web workers, without blocking the UI@marvelsq/use-properties-hookInstance functions inside FunctionComponent likeclass-propertiesand equal inShallowCompare@rehooks/component-sizeReact hook for determining the size of a component.@rehooks/document-titleReact hook for updating the document-title.@rehooks/document-visibilityReact hook for subscribing to document visibility.@rehooks/input-valueReact hook for creating input values.@rehooks/local-storageReact hook which syncslocalStorage[key]with the comp.@rehooks/network-statusReact hook for getting network-status.@rehooks/online-statusReact Hook for Online status.@rehooks/window-scroll-positionReact hook for getting windowxandyposition.@rehooks/window-sizeReact hook for subscribing to window size.@rekindle/use-requestð¤ React hook for making request.@rkrupinski/use-state-machineA finite state machine hook.@staltz/use-profunctor-stateReact Hook for state management with Profunctor Optics@webscopeio/react-health-checkð¥ Lightweight React hook for checking health of API services.@wellyshen/use-web-animationsð¿ React hook for highly-performant and manipulable animations using Web Animations API.@withvoid/melting-potReact hook utility library.ahooks/usetableA Progressive Solution for Query Table Scene.concentState management that tailored for react, it is simple, predictable, progressive and efficient.constateTransform your local state into global state usinguseContextStateanduseContextReducer.conuseShare Hook with Contexteasy-peasyEasy peasy global state for React.fetch-suspenseReact hook for the Fetch API with support for Suspense.graphql-hooksMinimal hooks-first GraphQL client.mobx-react-liteLightweight React bindings for MobX based on experimental React hooks.modaliA delightful modal dialog component for React, built from the ground up to support React Hooks.moment-hooksA library containing generic react hooksnice-hooksð¹ A lot of nice hooks to make react hooks easier to use ( useState callback / life cycle / instance variable)promise-hookReact hook for simplifying Promise based data fetching.reactive-react-reduxReact Redux binding with React Hooks and Proxyreact-async-hookReact hook to fetch ad-hoc data into your React components.react-cached-callbackReact hooks for caching many callbacks by key, for example, in loops.react-context-refsReact hooks for getting refs of elements via context.react-cookieReact hooks for universal cookies.react-cool-dimensionsð React hook to measure an element's size and handle responsive components.react-cool-formð React hooks for forms state and validation, less code more performant.react-cool-inviewð¥ï¸ React hook to monitor an element enters or leaves the viewport (or another element).react-cool-onclickoutsideð± React hook to listen for clicks outside of the component(s).react-cool-portalð React hook for Portals, which renders modals, dropdowns, tooltips etc. to or else.react-cool-virtualâ»ï¸ A tiny React hook for rendering large datasets like a breeze.react-countdown-hookDead simple yet powerful countdown hook for React. Powered byrequestAnimationFrame.react-darkreaderð A React Hook for adding a dark / night mode to your site inspired by darkreader.react-declare-formReact hook based declarative form library.react-deep-hooksReact hooks for non-primitive dependencies.react-dom-status-hookReact hook for subscribing to theDOMContentLoadedevent.react-enhanced-reducer-hookAn alternative touseReducerthat accepts middlewares.react-fetch-hookReact hook for conveniently use Fetch API.react-firebase-hooksA collection of hooks for use with Firebase.react-form-statefulForm library. Exposes dispatch to allow for the library to be extended through side effects.react-hangerA small collection of utility hooks.react-hook-mighty-mouseReact hook that tracks mouse events on selected element ðreact-hook-mousetrapA hook to trigger callbacks on keys or keys combos, powered by mousetrap.react-hookedupA collection of useful React hooks.react-hook-formForm validation without the hassle.react-hook-layoutLayout management in React.react-hooks-asyncReact custom hooks for async functions with abortability and composabilityreact-hooks-global-stateA simple global state management.react-hooks-image-sizeHook to get natural image size from url.react-hooks-libA set of reusable react hooks.react-hooks-svgdrawingA hooks to svg drawing.react-hooks-use-modalA hook to open the modal easily.react-hooks-visibleA hook to element visibility. Uses the intersection observer API.react-hooks-workerReact custom hooks for web workersreact-hotkey-hookReact hook for hotkeys.react-i18nextInternationalization for react done right.react-immer-hooksuseState and useReducer using Immer to update state.react-indicative-hooksHooks wrapping a data validation library called Indicativereact-intersection-visible-hookReact hook to track the visibility of a functional component.react-media-hookReact hook for Media Queries.react-metatags-hookReact Hook to manage html meta tags.react-native-react-bridgeA React Native plugin to run React and handle communication between them.react-optimistic-ui-hookâï¸ Minimal "optimistic UI" pattern implementation with a React hookreact-page-nameReact Hook for managing the page title.react-peer-dataReact wrapper for PeerData library for files, media streaming/sharing using WebRTC.react-pirateReact lifecycle and utilities hooks.react-powerhooksHooks api for react-powerplug components.react-promisefulA React component and hook to render children conditionally based on a promise status.react-queryHooks for fetching, caching and updating asynchronous data in React.react-recaptcha-hookReact hook for google-recaptcha v3react-recipesð©âð³ Collection of essential hook recipes ð¥react-request-hookManaged, cancelable and safe-oriented api requests.react-responsiveReact media query module.react-rocketjumpManage state and side effects like a breeze.react-screen-wake-lockReact implementation of the Screen Wake Lock API. It provides a way to prevent devices from dimming or locking the screen when an application needs to keep runningreact-script-hookReact hook to dynamically load an external script and know when its loadedreact-selector-hooksCollection of hook-based memoized selector factories for declarations outside of render.react-speech-kitHooks for browser Speech Recognition and Speech Synthesis.react-state-patternsUtility package for creating reusable implementations of React state provider patterns from hooks.react-swipeableReact swipe event handler hook.react-trackedSimple and fast global state with React Context. Eliminate unnecessary re-renders without hassle.react-uniformedð Declarative React forms using hooks.react-use-apiAsync HTTP request data for axios. Designed for diverse UI states, SSR and data pre-caching.react-use-browserA hook enabling client side hydration of Server-Side-Rendered components when server-produced markup needs to differ from the final client application markup.react-use-calendarA hook for implementing a calendar with events.react-use-clipboardA hook that copies text to a user's clipboard.react-use-d3A React hook to use D3.react-use-data-loaderReact hook for loading datareact-use-fetch-factoryReact hook that takes care of fetching and selecting data with redux.react-use-fetch-with-reduxReact hook that caches API requests that works with redux.react-use-form-stateReact hook for managing form and inputs state.react-use-id-hookReact hook for generating SSR-safe unique id strings.react-use-idbReact hook for storing value in the browser usingindexDB.react-use-infinite-loader:infinity: :page_with_curl: :hourglass_flowing_sand: Super lightweight infinite loading (scroll) hook for React appsreact-use-inputð£ A hook whose setter can be directly given to HTML inputsreact-use-lazy-load-image:sunrise: :zap: Add image lazy loading to your React app with easereact-use-message-barA simple React hook for message bars.react-use-modalReact hook for manage modal.react-use-pathThe tiniest hook style react router.react-use-scroll-positionReact hook for using the scroll position.react-use-triggerReact hook for trigger effect from any place of codereact-use-watchA React hook about triggers once only when dependencies have changed.react-use-waveletReact hooks for connecting to the Wavelet smart-contract platformreact-useCollection of essential hooks.react-useFormlessReact hook to handle forms state.react-usemiddlewareReact hook for using existing Redux middlewares (like thunk or saga) withuseReducer.react-useportalð usePortal, React hook for Portalsreact-user-mediaReact wrapper fornavigator.getUserMedia.react-waitComplex Loader Management Hook for React Applications.react-window-communication-hookReact hook to communicate among browser contexts (tabs, windows, iframes).react-with-hooksPonyfill for the proposed React Hooks API.reaktionuseState like hook for global state management.redhooksGlobal state management with React Hooks. It also supports the use of middleware like redux-thunk or redux-saga or your own custom middleware.redux-react-hookReact hook for accessing mapped state from a Redux store.region-coreA global state management framework with a hookuseProps.rehooks-visibility-sensorIt checks whether an element has scrolled into view or not.resyncedMultiple state management using React Hooks API.retoFlexible and efficient React store with hooks.rrhSuper Simple React Hooks for react-redux.rxjs-hooksAn easy way to use RxJS v6+ with react hooks.scroll-data-hookReturns information about scroll speed, distance, direction and more.style-hookð¨ wirte css in js with react hooks.swrReact Hooks library for remote data fetching.the-platformBrowser API's turned into React Hooks and Suspense-friendly React elements for common situations.trousersð A hooks-first CSS-in-JS library, focused on semantics and runtime performanceuse-abortable-fetchReact hook that does a fetch and aborts when the components is unloaded or a different request is made.use-actionAlmost same to useEffect, but not deferred.use-as-bindReact hook for using as-bind with a WASM source.use-async-memoReact hook for generating async memoized data.use-autocompleteA React hook for returning autocomplete values for a search string within an array.use-axios-reactReact CRUD hooks for axios, comprehensive list of examplesuse-booleanConvenient helpers for handling boolean state.use-browser-historyA React hook to handle browser history events.use-cartA React hook that gives you shopping cart functionality.use-click-awayReact hook when you want a callback invoked when a DOM element was not clicked.use-clippyA React hook to reading from and writing to the user's clipboard.use-context-selectorReact useContextSelector hook in userland.use-controlled-input-numberReact hook to turn numeric input behavior into pretty much what you expect.use-countriesCustom react hook to list countries and languages.use-debounceA debounce (and throttle) hook for React.use-deep-compareIt's react's useEffect/useMemo/useCallback hooks, except using deep comparison on the inputs.use-deep-compare-effectð It's react's useEffect hook, except using deep comparison on the inputs, not reference equality.use-detect-printReact hook to detect when a page is being printed.use-dimensionsReact Native hook for getting screen and window dimensions.use-double-clickReact hook for continuous double-clicks and combining click and double-click eventsuse-eazy-authReact hooks for handle auth stuff.use-eventsA set of React Hooks to handle mouse events.use-force-updateReact hook for forcing re-render of a functional Component.use-hotkeysHotKeys.js React Hook that listen to keydown and keyup keyboard events, defining and dispatching keyboard shortcuts.use-hoveringSimple, accessible React hook for tracking hover state.use-httpð¶ useFetch, React hook for making isomorphic http requests.use-immerA hook to use immer to manipulate state.use-input-fileReact hook for creating input file.use-is-mounted-refuseIsMountedRefis a React Hook to check when the component is mounted.use-lang-directionA hook that reads the HTML element'sdirattribute value and any updates to that value allowing you to update your UI accordingly.use-last-fmA hook to show your current playing song from Spotify or any other site last.fm supports in realtime. âªuse-liliusA headless calendar hook for React.use-mediaCSS media queries with React hook.use-mouse-actionReact Hooks to listen to both mouse down or up and click events with a once called function.use-multiselectManage multiselect state.use-overflowA React Hook that allows you to detect X and Y overflowuse-places-autocompleteð React hook for Google Maps Places Autocomplete.use-popperReact hook wrapper around Popper.js.use-query-paramsA React Hook for managing state in URL query parameters with easy serialization.use-react-modalð¼ useModal, React hook for Modals/Dialogs/Lightboxesuse-react-routerReact Hook for pub-sub behavior using React Router.use-reactive-stateuseReactiveState()- a reactive alternative to React'suseState().use-reducer-asyncReact useReducer with async actionsuse-reduxA hook to bind redux.use-scrollerReact hook that automatically adds the next page, saving users from a full page load.use-scroll-to-bottomReact hook for detecting when an element was scrolled to bottom.use-simple-undoSimple implementation of undo/redo functionality.server-push-hooksð¥ React hooks for socket.io, SEE and more to comeuse-socket.io-clientReact hook for socket.io-client, manipulate socket.io client without any side effect.use-sseâ¨useSSE - use Server-Side Effect.useEffectboth on client and server side.use-ssrâ¯ï¸ React hook to determine if you are on the server, browser, or react native.use-state-snapshotsA React hook to keep track of state changes for undo/redo functionality.use-substateReact hook for subscribing to your single app state (works with your current Redux app).use-suspenderExecute asynchronous actions withReact.Suspenseuse-tMulti-language using hooks.use-undoReact hook to implement Undo and Redo functionality.use-videocardReact hook to fetch the graphics card information of the client using canvasuse-window-blur-change-titleReact Hook for set the page title when the user is shifting focus away from the current window.useDarkModeA custom React Hook to help you implement a "dark mode" component.useDeferredStateA React hook for deferring state change. That's essential when your UI needs to wait for disappearing animation is complete to unmount component.useDropZoneReact hook that allows you to set simple drag and drop functionality.useEmailAutocompleteð¬ React hook for email autocomplete inputs.useFileDialogOpen file dialog without struggling with file input using useFileDialog react hookuseInViewReact implementation of the Intersection Observer API to tell you when an element enters or leaves the viewport.useIsTypingHook to see if the user is typing within a textarea or inputuseKeyCaptureâ¨ï¸ A simple hook to make keyDown listening event easier.usePositionReact hook to get position top left of an element.useReducerWithEffectsReact Hook that colocates reducer and side effectsuseReducerWithLocalStorageReact hook that adds local storage support to theuseReducerhookuseScreenTypeDetermining screen size type for Bootstrap 4 grid.useScreenTypeReact hook to dynamically get current screen type (mobile, tablet, desktop) with configurable breakpoint support.useScrollSpyReact hook to automatically update navigation based on scroll position.useServiceWorkerA React hook which can register a service workeruseValueAfterVery simple React hook to easily provide different props to a component (comes in handy for testing edge cases)useWaitForElementsA simple hook to wait for elements to be rendered with MutationObserver.useWindowOrientationA hook returning the window's orientation (portrait vs. landscape) based off of current window dimensionsuseWindowWidthBreakpointsA hook for using (Bootstrap-inspired) window width breakpoints
Top Related Projects
A collection of awesome things regarding React ecosystem
Curated List of React Components & Libraries.
Awesome React Native components, news, tools, and learning material!
📋 React Hooks for form state management and validation (Web + React Native)
React Hooks — 👍
🤖 Powerful asynchronous state management, server-state utilities and data fetching for the web. TS/JS, React Query, Solid Query, Svelte Query and Vue Query.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot