You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+16-8Lines changed: 16 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -58,29 +58,37 @@ You may know **TanSack Pacer** by our adapter names, too!
58
58
59
59
Take control of your application's timing with TanStack Pacer's rate limiting, throttling, and debouncing utilities. Manage complex async workflows using intelligent queuing and concurrency controls while maintaining full control with built-in pause, resume, and cancel capabilities.
60
60
61
-
## Quick Features
62
-
63
61
-**Debouncing**
64
-
- Delay functions execution until after a period of inactivity
62
+
- Delay execution until after a period of inactivity for when you only care about the last execution in a sequence.
65
63
- Synchronous or Asynchronous Debounce utilities with promise support and error handling
64
+
- Control of leading, trailing, and enabled options
66
65
-**Throttling**
67
-
-Limit the rate at which a function can fire
66
+
-Smoothly limit the rate at which a function can fire
68
67
- Synchronous or Asynchronous Throttle utilities with promise support and error handling
68
+
- Control of leading, trailing, and enabled options.
69
69
-**Rate Limiting**
70
-
- Limit the rate at which a function can fire
70
+
- Limit the rate at which a function can fire over a period of time
71
71
- Synchronous or Asynchronous Rate Limiting utilities with promise support and error handling
72
-
- Fixed or Sliding window types
72
+
- Fixed or Sliding Window variations of Rate Limiting
73
73
-**Queuing**
74
74
- Queue functions to be executed in a specific order
75
75
- Choose from FIFO, LIFO, and Priority queue implementations
76
-
- Control processing with configurable wait times or concurrency limits
76
+
- Control processing speed with configurable wait times or concurrency limits
77
77
- Manage queue execution with start/stop capabilities
78
-
- Synchronous or Asynchronous Queue utilities with promise support and success, settled, and error, handling
78
+
- Expire items from the queue after a configurable duration
79
+
-**Batching**
80
+
- Chunk up multiple operations into larger batches to reduce total back-and-forth operations
81
+
- Batch by time period, batch size, whichever comes first, or a custom condition to trigger batch executions
82
+
-**Async or Sync Variations**
83
+
- Choose between synchronous and asynchronous versions of each utility
84
+
- Optional error, success, and settled handling for async variations
79
85
-**Comparison Utilities**
80
86
- Perform deep equality checks between values
81
87
- Create custom comparison logic for specific needs
82
88
-**Convenient Hooks**
83
89
- Reduce boilerplate code with pre-built hooks like `useDebouncedCallback`, `useThrottledValue`, and `useQueuedState`, and more.
90
+
- Multiple layers of abstraction to choose from depending on your use case.
91
+
- Works with each framework's default state management solutions, or with whatever custom state management library that you prefer.
84
92
-**Type Safety**
85
93
- Full type safety with TypeScript that makes sure that your functions will always be called with the correct arguments
0 commit comments