react-intersection-observer
use-scroll-direction
Our great sponsors
react-intersection-observer | use-scroll-direction | |
---|---|---|
9 | 1 | |
4,791 | 30 | |
- | - | |
7.4 | 0.0 | |
20 days ago | over 1 year ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
react-intersection-observer
-
Beautiful UI animation on scroll with React
1. Install react-intersection-observer from Github
-
React scroll animations with Framer Motion
Alternatively, we can use a library that is designed to handle this functionality. This is the approach that we’ll follow in this article. We’ll be using the react-intersection-observer library, which is a React implementation of the intersection observer API. This library provides Hooks and render props that make it easy to track the scroll position of elements on the viewport.
-
Lazy loading multiple background videos on a page
This would do it for ya if you don't want to implement it yourself https://github.com/thebuilder/react-intersection-observer/blob/master/src/useInView.tsx
-
Scroll reveal with Framer Motion
I'll use React-Interception-Observer to control the screen events you can check the documentation if you wanna know more.
-
Lazy loading react components with dynamic imports and intersection observer
I'm going to be using react-intersection-observer library, which uses native IntersectionObserver underneath and gives us neat hooks for ease of use.
-
React Visibility - Detect when an element is becoming visible or hidden on the page.
There is no way you didn't see this package before building your own : https://github.com/thebuilder/react-intersection-observer
-
Load API content as elements become visible to users in React
TL;DR; You can reduce the number of queries you make on listing pages by loading content as it gets displayed. Use react-intersection-observer to detect when an element becomes visible and react-content-loader to display a contentful placeholder loader.
-
Create animations like PowerPoint slides in React with framer-motion and react-intersection-observe
*react-intersection-observer *— react implementation of the Intersection Observer API to tell you *when an element enters or leaves the viewport *(from official description). Docs here: https://github.com/thebuilder/react-intersection-observer#readme
-
Load API content progressively as elements become visible to users
I eventually ended up combining react-intersection-observer and react-content-loader to create a progressive loading experience where elements get loaded as they become visible to users.
use-scroll-direction
-
use-scroll-direction: A hook for simple detecting of scroll direction
use-scroll-direction https://github.com/AndrzejSala/use-scroll-direction As frontend devs, very often, we come to moment when we need to show/hide something on scroll, eg. topbar or some infobox. Based on the API provided by a browser it's not an easy task, we need to make some computation, store somewhere the previous direction and be sure that everything works correctly vast of browsers. To make our lives a little bit easier, at least for react devs, I created use-scroll-direction, a simple, though very performant hook for detecting scroll direction. Here are some key points:
What are some alternatives?
react-cool-inview - 😎 🖥️ React hook to monitor an element enters or leaves the viewport (or another element).
react-use-wizard - 🧙 A React wizard (stepper) builder without the hassle, powered by hooks.
dynamic-import-with-intersection-observer - Lazy loading react components with dynamic imports and intersection observer
react-indiana-drag-scroll - React component which implements scrolling via holding the mouse button or touch
react-awesome-reveal - React components to add reveal animations using the Intersection Observer API and CSS Animations.
react-keyboard-navigator - A suite of React components and hook for selecting sibling components through the keyboard.
svelte-inview - A Svelte action that monitors an element enters or leaves the viewport.🔥
use-scroll-position - Use scroll position ReactJS hook done right
r3f-perf - Easily monitor your ThreeJS performances.
react-transition-group - An easy way to perform animations when a React component enters or leaves the DOM
react-winbox - The newest React component for WinBox.js. A window manager for React.