Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


A React Hook, HOC, and Render Props solution for managing state in URL query parameters with easy serialization.

Works with React Router 5 and 6 out of the box. TypeScript supported.

npm Travis (.com)

When creating apps with easily shareable URLs, you often want to encode state as query parameters, but all query parameters must be encoded as strings. useQueryParams allows you to easily encode and decode data of any type as query parameters with smart memoization to prevent creating unnecessary duplicate objects. It uses serialize-query-params.



This is a monorepo managed with Lerna.

Package Version Docs Description
use-query-params npm use-query-params React library
serialize-query-params npm serialize-query-params js library


To get running locally:

npm install
npx lerna bootstrap --hoist --scope "use-query-params" --scope "serialize-query-params"
npm build
npm test

Set up examples:

lerna bootstrap --scope "*-example"
lerna link

Then run one:

lerna run --scope react-router-example start