Fate: A modern data client for React and tRPC
2 days ago
- #Data Fetching
- #tRPC
- #React
- Initial alpha release of fate, a modern data client for React & tRPC.
- fate combines view composition, normalized caching, data masking, Async React features, and tRPC's type safety.
- Designed to make data fetching and state management in React applications more composable, declarative, and predictable.
- Inspired by GraphQL and Relay but built for tRPC to avoid GraphQL's adoption overhead.
- Addresses common issues in React data fetching like boilerplate, cache management, and mutation complexity.
- Uses a normalized cache, declarative data dependencies, and view co-location.
- Minimal API focused on 'what data is required' rather than 'when to fetch data'.
- Supports optimistic updates and automatic rollbacks on mutations.
- Can be incrementally adopted in existing tRPC codebases.
- Future plans include garbage collection, compiler optimizations, and support for more backends.
- 80% of fate's code was written by OpenAI's Codex, with human curation.