Async state management and data fetching library for web apps, with bindings for React, Vue, Svelte and Solid.
apollographql/apollo-client
A GraphQL client for TypeScript and JavaScript with normalized caching, React hooks, and framework support for Vue, Angular and Svelte.
- Stars
- 19,784
- Forks
- 2,811
- Open issues
- 409
- Last commit
- 2 days ago
What is it?
Apollo Client is a GraphQL client library for JavaScript and TypeScript applications. It handles sending queries and mutations to a GraphQL server, stores the results in a local cache, and keeps the UI in sync when that data changes.
The library works with React, Vue, Angular, Svelte and plain JavaScript. Caching works without extra configuration, and developers can customize it through type policies and field-level rules. Full TypeScript types are provided for queries and results.
Install it with npm as @apollo/client along with the graphql package. Documentation, an API reference and a VS Code extension are available, and Apollo DevTools can be installed in Chrome or Firefox to inspect queries and the cache.
Key features
- 01Built-in normalized cache that works without extra configuration.
- 02Framework integrations for React, Vue, Angular, Svelte and vanilla JavaScript.
- 03Full TypeScript types for queries, mutations and results.
- 04Customizable cache behavior through type policies.
- 05Browser DevTools extensions for inspecting queries and cache state.
Use cases
- Building a React single-page app that fetches data from a GraphQL API.
- Adding GraphQL data fetching with local caching to a Vue or Angular frontend.
- Debugging GraphQL queries and cache contents during frontend development.
Quick start
- 1
Install Apollo Client and GraphQL with npm
npm install @apollo/client graphql
Topics
FAQ
- What is apollo-client?
- A GraphQL client for TypeScript and JavaScript with normalized caching, React hooks, and framework support for Vue, Angular and Svelte. Apollo Client is a GraphQL client library for JavaScript and TypeScript applications. It handles sending queries and mutations to a GraphQL server, stores the results in a local cache, and keeps the UI in sync when that data changes.
- Is apollo-client free to use? What license does it have?
- apollo-client is open source under the MIT license. Check the license terms before using it in commercial products.
- Is apollo-client still maintained?
- Actively maintained. The last commit to apollo-client was on Oct 19, 2026.
- What can I use apollo-client for?
- Building a React single-page app that fetches data from a GraphQL API. Adding GraphQL data fetching with local caching to a Vue or Angular frontend. Debugging GraphQL queries and cache contents during frontend development.
- How do I install apollo-client?
- Install Apollo Client and GraphQL with npm: npm install @apollo/client graphql
- Where can I get apollo-client?
- The source code and installation instructions are on GitHub: https://github.com/apollographql/apollo-client
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A headless, framework-agnostic rich text editor built on ProseMirror, extensible through a large set of extensions.
Open source React and Svelte libraries for building interactive node-based UIs such as flowcharts, graphs and workflow editors.
An open multi-platform, multi-framework solution for building one app that runs on WeChat/Alipay/other mini programs, H5 web, and React Native using React or Vue.
A React framework for building admin dashboards and back-office single-page apps on top of REST or GraphQL APIs, using Material UI.
A starter template for building cross-platform desktop apps with Electron, React, TypeScript, and Vite.