From a07dada0c9ba80976692ee14e256da0a2d6b0112 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 1 Feb 2026 10:16:35 +0900 Subject: refactor(atoms): migrate to jotai-tanstack-query from custom reloadable atoms Replace custom createReloadableAtom/createReloadableAtomFamily with atomWithSuspenseQuery from jotai-tanstack-query, leveraging TanStack Query's built-in caching, invalidation, and Suspense support. - Add @tanstack/query-core and jotai-tanstack-query dependencies - Create shared QueryClient instance (src/client/queryClient.ts) - Migrate all data atoms (decks, cards, study, noteTypes) to atomWithSuspenseQuery - Update page components to use .data destructuring and queryClient.invalidateQueries() - Update all test files to use QueryClient for data hydration - Remove src/client/atoms/utils.ts (no longer needed) Co-Authored-By: Claude Opus 4.5 --- package.json | 2 ++ 1 file changed, 2 insertions(+) (limited to 'package.json') diff --git a/package.json b/package.json index b8a8f56..f426ff0 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,7 @@ "@fortawesome/react-fontawesome": "^3.1.1", "@hono/node-server": "^1.19.7", "@hono/zod-validator": "^0.7.6", + "@tanstack/query-core": "^5.90.20", "argon2": "^0.44.0", "dexie": "^4.2.1", "drizzle-kit": "^0.31.8", @@ -44,6 +45,7 @@ "hono": "^4.11.3", "hono-rate-limiter": "^0.5.3", "jotai": "^2.16.1", + "jotai-tanstack-query": "^0.11.0", "pg": "^8.16.3", "react": "^19.2.3", "react-dom": "^19.2.3", -- cgit v1.3-1-g0d28