Tools
TanStack
Query, Table, and the rest — data fetching and UI primitives that just work.
The TanStack libraries handle the tedious parts of frontend development so I can focus on the actual product.
What I use:
- TanStack Query — Server state management with caching, background refetching, and optimistic updates. Eliminates most of the boilerplate around data fetching.
- TanStack Table — Headless table logic for sorting, filtering, pagination, and column management. I bring my own UI; it handles the state.
Framework-agnostic, well-documented, and maintained by people who clearly use their own tools. Every project I touch ends up with at least one TanStack library.
When I use it
- Data-heavy UIs with async fetching, cache concerns, and mutation flows.
- Complex table interactions where state logic should stay headless and reusable.
- Projects where predictable server-state behavior is more important than custom state wiring.
When I avoid it
- Very simple pages with one-off fetches and no meaningful cache lifecycle.
- Teams that do not need the abstraction level yet.
- Cases where introducing a dependency adds more complexity than it removes.
One real example
In applications with many concurrent backend interactions, I use TanStack Query to keep cache/refetch behavior explicit and reduce custom fetch-state boilerplate.