What problem does it solve? It standardizes how a React codebase fetches and caches server data by enforcing SWR hook factories, cache tags, and file-layout conventions, preventing ad-hoc fetch calls and inconsistent cache invalidation. ## Core Features & Use Cases - Hook Factories: Build every endpoint hook from createQueryHook, createInfiniteQueryHook, or createMutationHook instead of calling SWR directly. - Cache Tag System: Declare exported tag keys and use global cache actions (invalidate, forceReload, patchByKey, optimisticallyUpdate) for cross-module invalidation without hand-built cache keys. - Route-Mirrored Layout: Organize files under src/hooks/api/** so directory paths mirror REST routes and filenames match HTTP methods, with upsert hooks composed via createUpsertHook. - Use Case: When adding a new GET /v1/businesses/{id}/reports endpoint, create reports/get.ts with a tag key, response schema, getWithQuery request, and a createQueryHook call, then wire its cache actions into related mutations. ## Quick Start Add a new API hook for an endpoint by following the data-loading conventions in src/hooks/api, using the appropriate SWR factory and exporting its cache tag key.