Type-safe search params state manager for Next.js - Like React.useState, but stored in the URL query string
Overall
score
96%
Strict validation mode
Uses createSearchParamsCache
100%
100%
Enables strict validation
100%
100%
Uses parseAsStringEnum
100%
100%
Uses parseAsInteger
100%
100%
Uses parseAsBoolean
100%
100%
Configures default value
100%
100%
Calls parse method
100%
100%
History mode control (push vs replace)
useQueryState Usage
72%
100%
Parser Configuration
100%
100%
Push Mode Implementation
90%
100%
Replace Mode Implementation
90%
100%
Dynamic Mode Switching
80%
100%
Mode Toggle UI
30%
100%
useQueryStates hook for multiple URL parameters
useQueryStates Import
100%
100%
Parser Configuration
100%
100%
URL Key Mapping
100%
100%
useQueryStates Hook Usage
100%
100%
Atomic Updates
100%
100%
Clear All Functionality
100%
100%
Partial Updates
100%
100%
Nullable and non-nullable state types
useQueryState imports
100%
100%
Parser imports
60%
100%
Nullable search state
100%
100%
Non-nullable category
100%
100%
Non-nullable minPrice
25%
100%
Non-nullable inStock
25%
100%
Type-safe state management with TypeScript inference
useQueryState usage
100%
100%
String enum parser
100%
100%
Integer parser
100%
100%
Boolean parser
100%
100%
String literal parser
33%
100%
Default values
100%
100%
Type inference
100%
0%
Framework adapters (Next.js, React, Remix, React Router, TanStack Router)
Next.js Adapter Import
0%
100%
React SPA Adapter Import
0%
100%
Testing Adapter Import
0%
100%
Provider Component Usage
0%
0%
useQueryState Hook
0%
100%
String Parser Usage
0%
100%
Enum Parser Usage
0%
100%
Scroll behavior control
useQueryState usage
100%
100%
Scroll on category
100%
100%
No scroll on search
100%
100%
Scroll on reset
100%
100%
Parser builder pattern (withDefault, withOptions)
withDefault usage
50%
100%
String parser with default
53%
93%
Integer parser with default
0%
100%
String literal type
100%
100%
History mode configuration
50%
100%
Parser method chaining
60%
100%
History API patching for external navigation tracking
useQueryState hook usage
100%
86%
Default value configuration
100%
100%
Push history mode
100%
100%
Replace history mode
100%
100%
Navigation event tracking
90%
90%
Adapter integration
0%
0%
Built-in complex type parsers (arrays, JSON objects)
Native array parser
100%
100%
JSON object parser
100%
100%
Array parser
100%
100%
State clearing
100%
100%
Type safety
100%
60%
Install with Tessl CLI
npx tessl i tessl/npm-nuqs