Introduction to Apollo Client
Apollo Client 3.5 is available as a release candidate (learn about release stages).
See the preview documentation for:
- Cache methods
updateQuery
andupdateFragment
useMutation
helper functionreset
For all updates, see the changelog.
Apollo Client is a comprehensive state management library for JavaScript that enables you to manage both local and remote data with GraphQL. Use it to fetch, cache, and modify application data, all while automatically updating your UI.
Apollo Client helps you structure code in an economical, predictable, and declarative way that's consistent with modern development practices. The core @apollo/client
library provides built-in integration with React, and the larger Apollo community maintains integrations for other popular view layers.
Features
- Declarative data fetching: Write a query and receive data without manually tracking loading states.
- Excellent developer experience: Enjoy helpful tooling for TypeScript, Chrome / Firefox devtools, and VS Code.
- Designed for modern React: Take advantage of the latest React features, such as hooks.
- Incrementally adoptable: Drop Apollo into any JavaScript app and incorporate it feature by feature.
- Universally compatible: Use any build setup and any GraphQL API.
- Community driven: Share knowledge with thousands of developers in the GraphQL community.
Recommended docs
After you get started, check out the full Apollo Client documentation in the navigation on the left.
We recommend the following articles in particular:
- Queries and Mutations. These are the read and write operations of GraphQL.
- Caching overview. Apollo Client's normalized cache enables you to skip network requests entirely when data is already available locally.
- Managing local state. Apollo Client provides APIs for managing both remote and local data, enabling you to consolidate all of your application's state.
- Basic HTTP networking. Learn how to send custom headers and other authentication metadata in your queries.
- Testing React components. Test your GraphQL operations without requiring a connection to a server.
Community integrations
This documentation set focuses on React, but Apollo Client supports many other libraries and languages:
- JavaScript
- Web Components
- Native mobile