nuqs

nuqs

@nuqs.dev

Type-safe search params state manager for React frameworks. Like useState, but stored in the URL query string. Made by @francoisbest.com & contributors ๐Ÿ”— https://nuqs.dev

373 followers1 following91 posts

Pinned

๐Ÿ“ฆ nuqs@2.10.2 is out! ๐Ÿš€ It fixes a bug of state flickering when a sync render interrupted a startTransition in React Router, and a bug in Next.js 16.4.0 with shallow updates interfering with each other. Changelog: nuqs.dev/changelog Try it out: pnpm add nuqs@latest

๐Ÿ“ฆ nuqs@2.9.3 is out! ๐Ÿš€ It fixes a bug where state updates would blink/replay when pending state updates done in startTransition were rebased on top of other priority updates. Concurrent React is fun. Try it out: pnpm add nuqs@latest

๐Ÿ“ฆ nuqs@2.9.2 is out! ๐Ÿš€ It fixes a React concurrency issue where a discarded render could leave query state stuck out of sync with the URL. Try it out: pnpm add nuqs@latest

nuqs reposted

Staged publishing TL;DR 1. You replace `npm publish` with `npm stage publish` 2. It puts the tarball in a staging area for review 3. You approve it via the CLI or web It will land in npm@^11.15.0. I've already turned off non-staged publishing in @nuqs.dev (in the Trusted Publishing settings).

James@43081j.com

Woooo yeaaah! The missing piece ๐ŸŽ‰ everything is about to get a lot more secure

๐Ÿ“ฆ nuqs@2.8.9 is out! ๐Ÿš€ It fixes a warning in @nodejs.org 25 related to localStorage access on the server (TIL Node.js is adding this API ๐Ÿ‘€). You can now enable debug logs server-side with the env var DEBUG="nuqs" (or any string that contains it). Try it out: pnpm add nuqs@latest

๐Ÿ“ฆ nuqs@2.8.8 is out! ๐Ÿš€ ๐Ÿž It fixes a bug with @nextjs.org app router where URL state would leak during navigation (destination page pre-rendered with the source page's search params). Try it out: pnpm add nuqs@latest

๐Ÿ“ฆ nuqs@2.8.7 is out! ๐Ÿš€ ๐Ÿž It fixes a bug with @reactrouter.com 6/7 & @remix.run with Link & Back navigation, where the source page would briefly re-render with the destination URL state before unmounting. Try it out: pnpm add nuqs@latest

nuqs has reached TEN THOUSAND STARS ๐Ÿคฏ Insane. Thank you so much, y'all! ๐Ÿซถ

nuqs reposted

The @nuqs.dev types in TypeSlayer ๐Ÿ˜ˆ Happy new year! ๐ŸŽ†๐ŸŽ‡

MichiganTypeScript@michigantypescript.com

๐Ÿฅณ TypeSlayer is out! celebrate by posting what your type graph looks like! it legit has an actual leaderboard now: so bonus points if you win lol ๐Ÿ†๐Ÿ† run: `npx typeslayer` source: github.com/dimitropoulo...

nuqs reposted

๐ŸŸฃ on Tuesday stream we'll be adding an e2e test suite for the @nuqs.dev Waku adapter targeting v1@alpha. This is the "graduation ceremony" towards becoming the 8th official adapter! ๐ŸŽ‰โ›ฉ๏ธ

Daishi Kato@daishikato.com

Waku v1 Alpha Is Finally Released Nearly Three Years in the Making newsletter.daishikato.com/p/waku-v1-al... - It's a React framework developed for React Server Components from day one. - It's based on Vite and Hono. - Its API is small and easy to learn. ๐Ÿ‘‰ waku.gg โ›ฉ๏ธ

nuqs reposted

I tried Claude Code this weekend to rewrite the @nuqs.dev e2e test suite from Cypress to Playwright. LoC wise, this was a 80% ๐Ÿค– / 20% ๐Ÿ‘จโ€๐Ÿ’ป But prep was about 80% ๐Ÿง  / 20% ๐Ÿค– I prepared a few example tests, shared abstractions and metadata (deps, config) by hand, and left the grunt work to the bots.

๐Ÿ“ฆ nuqs@2.8.6 is out! ๐Ÿš€ Type-level bug fix: the `LoaderOptions` type was deprecated in favour of `CreateLoaderOptions`, which wasn't exported (it is now). Try it out: pnpm add nuqs@latest

nuqs reposted

I see a lot of AI slop articles about @nuqs.dev on LinkedIn, but this one tops it all. ๐Ÿคฆโ€โ™‚๏ธ The article also ends up with the usual follow-up: "would you like to add any other sections to the blog post, such asโ€ฆ" ๐Ÿซ 

nuqs reposted

๐Ÿ“บ Video is up! In 1h30 we built a @nuqs.dev adapter for @redwoodjs.com, with: - Client hook (read + write) - Server-side loading - Declarative client/server state location (with the shallow option) - Full type-safe linking (pathname + search params) Code & links in the description โฌ‡๏ธ

youtube.comMaking a custom nuqs adapter for RedwoodSDKYouTube video by 47ng
Franรงois Best@francoisbest.com

๐ŸŸฃ I'm live on Twitch! Adding @nuqs.dev to @redwoodjs.com (the @cloudflare.social RSC framework), come say hi! ๐Ÿ‘‹ twitch.tv/fortysevenfx

nuqs reposted

Coming next year: @nuqs.dev workshops. I come to your company (in person or remote), and: - Evaluate how your app could improve with URL state - Show you how to use nuqs efficiently for your domain - Level up your team with best practices Interested? DMs are open.

๐Ÿ“ฆ nuqs@2.8.5 is out! ๐Ÿš€ It fixes a bug with useQueryStates where passing undefined for a key would try and serialise it. - undefined means "leave as-is" - null means "remove from the URL" - any other value sets the state & updates the URL Try it out: pnpm add nuqs@latest

๐Ÿ“ฆ nuqs@2.8.4 is out! ๐Ÿš€ It removes the "use client" directive from .d.ts files, which could cause issues when "skipLibCheck" wasn't set in your @typescriptlang.org config. It also fixes an internal script to build the repo on Windows. Try it out: pnpm add nuqs@latest

๐Ÿ“ฆ nuqs@2.8.3 is out! ๐Ÿš€ ๐Ÿž It fixes a bug where the processUrlSearchParams middleware wasnโ€™t called on debounced updates. Try it out: pnpm add nuqs@latest

nuqs reposted

we all love @nuqs.dev ๐Ÿ’™ thank you @francoisbest.com for supporting @pkg.pr.new. and a huge shoutout to @ariperkkio.dev for suprising me with this one.

Franรงois Best@francoisbest.com

I'm signing the @opensourcepledge.com, it's time to give back to the maintainers of the projects @nuqs.dev depends on. I just gave 2700โ‚ฌ ($3,212) to 18 maintainers & projects I use, love, and want to support. Happy Thanksgiving! ๐Ÿ’– nuqs.dev/blog/open-so...

๐Ÿ“ฆ nuqs@2.8.1 is out! ๐Ÿš€ ๐Ÿž It fixes two bugs with @tanstack.com Router: - Trailing slash is no longer added on state updates - Custom history.state is maintained Try it out: pnpm add nuqs@latest

nuqs reposted

The @nuqs.dev @shadcn.com registry now has an RSS feed ๐Ÿ“ก โœจ Get notified when we drop a new adapter, parser or utility ๐Ÿž or when we push updates & bug fixes nuqs.dev/registry It now contains community adapters, to one-command install nuqs in: โ›ฉ๏ธ Waku ๐Ÿ˜ Inertia ๐Ÿฅ‡ One.js ๐Ÿ“ฑ Expo Router (coming soon)

๐Ÿ“ฆ nuqs@2.7.3 is out! ๐Ÿš€ - bug fix when passing null to clear a key configured with parseAsArrayOf(...).withDefault([]) - parseAsBoolean is now case-insensitive โ†’ /?bool=TRUE does what you expect Try it out: pnpm add nuqs@latest