Skip to content

Instantly share code, notes, and snippets.

View Spidy88's full-sized avatar

Nick Ferraro Spidy88

View GitHub Profile
@Spidy88
Spidy88 / useResizeObserver.tsx
Created July 21, 2025 21:57
useResizeObserver
import { useLayoutEffect, useRef } from 'react';
export function useResizeObserver<E extends HTMLElement = HTMLElement>(
onResize: (el: E) => unknown,
) {
const ref = useRef<E>(null);
useLayoutEffect(() => {
if (!ref.current) {
return;
}
@Spidy88
Spidy88 / useDebounce.tsx
Last active May 28, 2025 23:17
React Hook - useDebounce
import debounce from 'lodash/debounce';
import noop from 'lodash/noop';
import { useState, useCallback, useRef } from 'react';
interface UseDebounceOptions<T> {
initialValue: T;
onChange?: (value: T) => void;
debounceTime?: number;
}