Every data table, search page, and filtered list has the same problem: the user applies a filter, the results update, they share the URL — and the recipient lands on an empty page because the filter lived in useState and died with the component.
nuqs solves this with a useState-compatible API where the URL is the state container.
What nuqs Does
// Regular state — lost on reload, not shareable
const [search, setSearch] = useState('')






