awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
47ng avatar

47ng/nuqs

0
View on GitHub↗

Nuqs

nuqs is a TypeScript library for managing React component state through the browser's URL query string. It provides a type-safe hook-based approach that synchronizes component state with the address bar, enabling shareable and bookmarkable application states. The library handles parsing and serializing URL query parameters into typed JavaScript values, supporting integers, floats, booleans, dates, and custom types with bijectivity verification.

The library distinguishes itself through its comprehensive approach to URL state management, combining batch URL updates that merge multiple parameter changes into a single history entry, with control over whether state changes replace or push to browser history. It includes server component support with caching that allows deeply nested server components to access search parameters without re-parsing, and integrates with React's useTransition to show loading states during server component re-renders. The library also provides throttled URL queuing to comply with browser rate limits while keeping hook state instantly responsive, and a Standard Schema adapter for validating external data and sharing type inference with other tools.

Beyond its core functionality, nuqs offers testing utilities that simulate URL state changes without mocking router internals, allowing unit tests for components using query state. It supports batch operations for managing multiple query parameters atomically, debouncing and throttling for performance optimization, and middleware for processing URL search parameters. The library includes features for controlling default value display, remapping variable names to short URL keys, and preventing scroll reset during URL updates. It also provides framework adapters for integration with different React frameworks and routing libraries, including support for TanStack Router validation.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI
nuqs.dev
↗

Features

  • URL State Synchronization - Stores React component state in the browser's URL query string with type-safe parsing and serialization.
  • URL State Management - Stores component state in the URL query string, making it the source of truth for shareable and bookmarkable application state.
  • Request-Scoped Caches - Caches parsed query parameter values per page render for efficient access by deeply nested server components.
  • Server Re-render Triggers - Provides configurable server re-rendering triggers when URL query parameters change, with throttling support.
  • URL State Serialization - Generates query strings from state values using the same serialization logic as the hooks for link population.
  • URL Search Param Type Safety - Provides full TypeScript type safety for parsing and serializing URL query parameters.
  • Query State Sharing - Encapsulates parser configuration in a custom hook so multiple components share the same query string key.
  • URL-Driven Component Tests - Provides a testing adapter that simulates URL state changes without mocking the router, allowing unit tests for components using query state.
  • Server Components - Provides type-safe access to search parameters in deeply nested React Server Components.
  • Request-Scoped Caches - Stores parsed URL query parameters in a per-request cache for efficient access by deeply nested server components.
  • Search Parameter Accessors - Provides type-safe access to parsed search parameters in deeply nested server components via caching.
  • Search Parameter Caches - Caches parsed search parameters so deeply nested server components access them without re-parsing.
  • URL State Accessors - Provides type-safe access to URL search parameters in React Server Components with caching.
  • URL Query Parameter Batches - Provides batch URL updates that merge multiple parameter changes into a single history entry.
  • Atomic Query Parameter Updates - Updates several URL search parameters in a single state transition so they always stay in sync.
  • Multi-Parameter State Hooks - Updates and reads several URL query parameters simultaneously through a single hook, reducing boilerplate for complex state.
  • Related Parameter Groups - Reads and writes a group of related query parameters as a single object, keeping them synchronized.
  • URL-Synchronized Navigation - Controls browser history entries and triggers server re-renders when URL query parameters change.
  • Framework Integrations - Provides framework-specific adapters to integrate URL state management across different React frameworks.
  • Query String Parsers - Converts URL query string values into typed JavaScript values using built-in parsers for common types.
  • History Stack Controllers - Controls whether state changes replace or push to browser history for back-button navigation.
  • Query Parameter Parsers - Converts URL query string values into typed JavaScript values using built-in parsers for common types.
  • Search Parameter Accessors - Reads type-safe search parameters in nested server components without prop drilling.
  • Search Parameter Parsers - Parses URL query parameters on the server using a declarative schema for typed state variables in loaders and server components.
  • Transition-Wrapped Updates - Integrates with React's useTransition to show loading indicators during server-side URL state updates.
  • URL Query Type Parsers - Converts URL query strings into typed JavaScript values with built-in parsers for common types.
  • URL Search Param Parsers - Parses and serializes URL query parameters with TypeScript type safety and custom parser support.
  • URL Data Parsing - Converts query string values into typed JavaScript values using built-in parsers for integers, floats, booleans, and dates.
  • Transition-Wrapped Navigations - Wraps server-rendering updates in React's useTransition to show loading states during re-renders.
  • History Entry Replacements - Controls whether URL state updates replace or push browser history entries for back-button navigation.
  • Standard Schema Validators - Converts search param definitions into Standard Schema objects for validating external data.
  • Transition Loading States - Integrates with React's useTransition to show pending UI while server components re-render.
  • History Entry Replacements - Controls whether URL state updates replace or push browser history entries for back-button navigation.
  • URL Key Remappers - Remaps long internal variable names to short URL query string keys for cleaner URLs.
  • Realtime Update Throttles - Queues and throttles URL updates to comply with browser rate limits, keeping the UI responsive.
  • URL Update Queues - Queues and throttles URL updates to comply with browser rate limits while keeping state responsive.
  • History Entry Replacements - Controls whether URL state updates replace or push browser history entries for back-button navigation.
  • Server - Performs shallow client-side updates by default with opt-in server notification and throttle control.
  • Loading State Indicators - Integrates with React's useTransition to display loading indicators while server-side state updates are in progress.
  • Loading State Indicators - Integrates with React's useTransition to show loading indicators while the server re-renders.
  • History Entry Replacements - Controls whether URL state updates replace or push browser history entries for back-button navigation.
  • URL Update Assertions - Captures URL changes triggered by component actions and exposes new search parameters for test verification.
  • Framework Adapters - Wraps URL state hooks to work across different React frameworks and routing libraries.
  • Server Re-rendering Triggers - Triggers full server round-trips when URL query parameters change to re-render page content.
  • History Entry Replacements - Controls whether URL state updates replace or push browser history entries for back-button navigation.
  • Query String Construction - Generates query strings from state values for use in links and canonical URLs.
  • Server Re-rendering Controls - Opts out of client-only updates to notify the server when query parameters change, enabling server-side rendering.
  • Debounced State Updates - Delays URL updates until state changes settle, useful for high-frequency inputs like search fields.
  • External Component Bridges - Bridges typed routing schemas with external state components for cross-system URL parameter validation.
  • TanStack Router Validators - Provides TanStack Router integration with Standard Schema validators for type-safe URL search parameter validation.
  • Query Parameter Resets - Resets every search parameter controlled by a hook to its default by passing null to the updater.
10,591 stars·285 forks·TypeScript·MIT·17 views

Star history

Star history chart for 47ng/nuqsStar history chart for 47ng/nuqs

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Projects sharing features with Nuqs

These projects share indexed features with Nuqs. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • browserstate/history.jsbrowserstate avatar

    browserstate/history.js

    10,659View on GitHub↗

    history.js is a cross-browser URL state manager and HTML5 History API polyfill. It functions as a single page application router that manages browser URL and history state consistently across HTML5 and HTML4 browsers, enabling navigation without triggering full page reloads. The project provides a JavaScript framework adapter that integrates history management with the event systems of jQuery, MooTools, and Prototype. It ensures compatibility through a fallback mechanism that switches to hash-based navigation and hashbang URLs when the native HTML5 History API is unavailable. The system cove

    JavaScripthashchangehtml5-historyhtml5-history-api
    View on GitHub↗10,659
  • pmndrs/jotaipmndrs avatar

    pmndrs/jotai

    21,208View on GitHub↗

    Jotai is a state management library for React applications that utilizes an atomic model to handle data. It organizes application state into small, independent units called atoms, which automatically track dependencies and trigger granular updates to components. By building state through these composable primitives, the library ensures that only the necessary parts of an application re-render when data changes. The library distinguishes itself through its flexible approach to state composition and asynchronous data handling. It integrates promises directly into the state model, allowing devel

    TypeScriptatomichacktoberfestmanagement
    View on GitHub↗21,208
  • openstatushq/data-table-filtersopenstatusHQ avatar

    openstatusHQ/data-table-filters

    1,852View on GitHub↗

    Data table filters is a TypeScript library for building interactive data tables with server-side filtering, faceted search, and virtualized rows. It provides a backend data querying system for filtering, sorting, and paginating large datasets directly in the database, alongside UI components for filtering using checkboxes, sliders, and date ranges. The library supports dynamic record refinement through text search, numerical sliders, and date range pickers, handling filter and table state via interchangeable storage adapters including URL parameters, client stores, or memory. It synchronizes

    TypeScriptcmdkdata-tablenextjs
    View on GitHub↗1,852
  • sindresorhus/query-stringsindresorhus avatar

    sindresorhus/query-string

    6,904View on GitHub↗

    This is a suite of JavaScript utilities for the bidirectional conversion and manipulation of URL components and query parameters. It provides a mechanism for parsing URL query strings into data objects and serializing those objects back into URL-encoded strings. The library includes functions for filtering, isolating, and modifying parameters within a full URL or query string. It supports the construction of complete web links by combining base addresses with formatted query parameters. The toolset covers data transformation primitives such as alphabetical key sorting, input sanitization, an

    JavaScript
    View on GitHub↗6,904
Compare all 30 related projects→

Frequently asked questions

What does 47ng/nuqs do?

nuqs is a TypeScript library for managing React component state through the browser's URL query string. It provides a type-safe hook-based approach that synchronizes component state with the address bar, enabling shareable and bookmarkable application states. The library handles parsing and serializing URL query parameters into typed JavaScript values, supporting integers, floats, booleans, dates, and custom types with bijectivity verification.

What are the main features of 47ng/nuqs?

The main features of 47ng/nuqs are: URL State Synchronization, URL State Management, Request-Scoped Caches, Server Re-render Triggers, URL State Serialization, URL Search Param Type Safety, Query State Sharing, URL-Driven Component Tests.

Which projects share features with 47ng/nuqs?

Projects with overlapping indexed features include: browserstate/history.js — history.js is a cross-browser URL state manager and HTML5 History API polyfill. It functions as a single page… pmndrs/jotai — Jotai is a state management library for React applications that utilizes an atomic model to handle data. It organizes… openstatushq/data-table-filters — Data table filters is a TypeScript library for building interactive data tables with server-side filtering, faceted… sindresorhus/query-string — This is a suite of JavaScript utilities for the bidirectional conversion and manipulation of URL components and query… reach/router — Reach Router is a client-side routing library for React applications that maps URL patterns to components without full… graphcool/graphql-playground — GraphQL Playground is a web-based integrated development environment and API client for GraphQL. It functions as a…