tanstack-pacer

TanStack Pacer for rate limiting, throttling, debouncing, and async queuing. Use when controlling execution frequency, managing API rate limits, debouncing user input, or queuing async tasks. Use for pacer, throttle, debounce, rate-limit, queue, async-throttle, rate-limiting.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "tanstack-pacer" with this command: npx skills add oakoss/agent-skills

TanStack Pacer

Overview

TanStack Pacer is a lightweight, type-safe library for controlling function execution timing through debouncing, throttling, rate limiting, queuing, and batching. It provides framework-agnostic core classes with dedicated React hooks at multiple abstraction levels (instance, callback, state, value).

When to use: Debouncing search input, throttling scroll/resize handlers, enforcing API rate limits, queuing async tasks with concurrency control, batching multiple operations into single requests.

When NOT to use: Simple one-off delays (use setTimeout), server-side rate limiting at the infrastructure level (use middleware/API gateway), complex job scheduling (use a task queue like BullMQ).

Quick Reference

PatternAPIKey Points
Debounce functionDebouncer / debounce(fn, opts)Waits for inactivity; no maxWait option by design
Throttle functionThrottler / throttle(fn, opts)Even spacing; leading and trailing both default true
Rate limitRateLimiter / rateLimit(fn, opts)Fixed or sliding window; rejects calls over limit
Queue itemsQueuer / queue(fn, opts)FIFO default; supports LIFO, priority, expiration
Async queueAsyncQueuer / asyncQueue(fn, opts)Concurrency control, retry, error callbacks
Async batchAsyncBatcher / asyncBatch(fn, opts)Collects items, processes as batch after wait/maxSize
React debounceuseDebouncer / useDebouncedCallbackInstance hook vs simple callback hook
React throttleuseThrottler / useThrottledCallbackInstance hook vs simple callback hook
React rate limituseRateLimiter / useRateLimitedCallbackInstance hook vs simple callback hook
React queueuseQueuer / useQueuedStateInstance hook vs state-integrated hook
React async queueuseAsyncQueuer / useAsyncQueuedStateConcurrency + state management
React batchuseBatcher / useAsyncBatcherSync and async batching hooks
State hooksuseDebouncedState, useThrottledStateIntegrate with React state directly
Value hooksuseDebouncedValue, useThrottledValueCreate derived debounced/throttled values

Common Mistakes

MistakeCorrect Pattern
Using maxWait on DebouncerDebouncer has no maxWait; use Throttler for evenly spaced execution
Creating instances inside renderCreate with hooks (useDebouncer, useThrottler) to manage lifecycle
Ignoring maybeExecute returnRate limiter and throttler may reject calls; check state or use callbacks
Using debounce when throttle is neededDebounce waits for pause; throttle guarantees max-once-per-interval
Not cleaning up on unmountReact hooks handle cleanup automatically; manual instances need cancel()
Using Queuer when items can be droppedQueuers process every item; use throttle/debounce if dropping is acceptable
Fixed window when sliding is neededFixed windows allow bursts at boundaries; sliding window gives smoother rate
Forgetting onReject on RateLimiterRejected calls are silent by default; add onReject for user feedback
Not passing enabled: false to disableAll utilities support enabled option to temporarily disable processing

Delegation

If the tanstack-query skill is available, delegate data fetching and cache management tasks to it. TanStack Pacer complements Query for controlling request frequency. Otherwise, recommend: npx skills add oakoss/agent-skills --skill tanstack-query

  • Execution timing patterns: Use this skill
  • Data fetching and caching: Delegate to tanstack-query
  • Component architecture: Delegate to framework-specific skills

References

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

playwright

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

ui-ux-polish

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

tanstack-form

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

find-skills

No summary provided by upstream source.

Repository SourceNeeds Review