react-aspirin
v0.1.4
Published
A high-performance, tree-shakable React utility library.
Maintainers
Readme
react-aspirin 💊
A high-performance, tree-shakable React utility library that "cures" common developer headaches.
Features
- useTrace: Diagnostic re-render tracking.
- useGhost: Zero-config form manager.
- Guard: Error boundary with reporting.
- useAdapt: Hardware/Network health sensor.
- useIdle: Defer work to idle periods.
- useVisual: Scroll-trigger observer.
- useWorker: Inline Web Worker adapter.
- useLatest: Stale-data ref sync.
- useHistory: Undo/Redo state management.
- useQueue: FIFO task queue.
- useKeyCap: Keyboard shortcut manager.
- useLockBody: Body scroll lock.
- useFocusTrap: A11y focus management.
- useOnline: Connectivity status.
- useStorage: Local/Session storage sync.
- Portal: Simplified React Portals.
- Match: Declarative
switchin JSX. - useClickAway: Detect outside clicks.
- useClipboard: Copy with feedback.
- useDebouncedValue: classic value debouncing.
- useTransitionState: Animation state manager.
- useAutoAnimate: Zero-config transitions.
- useMedia: Reactive media queries.
- useMeasure: Element dimension tracker.
- usePoll: Smart visibility-aware polling.
- useOnlineEffect: Re-sync on reconnection.
- Repeater: Map-free list rendering.
- useContextFactory: Generic Provider/Hook generator.
Installation
npm install react-aspirinQuick Examples
Performance: useWorker
const { result, run, loading } = useWorker((n) => fibonacci(n));
run(40);UX: useKeyCap & useLockBody
useKeyCap('esc', () => setOpen(false));
useLockBody(isOpen);Logic: useHistory
const [text, setText, { undo, redo }] = useHistory('');Architecture: Match
<Match value={status}>
<Match.Case is="loading"><Spinner /></Match.Case>
<Match.Case is="error"><Error /></Match.Case>
<Match.Default><DataView /></Match.Default>
</Match>License
MIT
