GraphQL for Angular
Apollo Angular brings Apollo Client to Angular: queries, mutations and subscriptions as RxJS observables, injectable services, and a normalized cache. Part of the Hive ecosystem by The Guild.
- Idiomatic Angular services
- RxJS observables
- SSR and caching built in
Why Apollo Angular
- Easy to useDesigned from the ground up to be easily configured and used, to get your application up and running quickly.
- CustomisableExtend or customize your GraphQL setup. Apollo Angular can be extended on every level, from links to the cache.
- Production-readyUsed with success and proven by many large-scale applications, with server-side rendering and performance guides included.
Queries as observables
Inject Apollo, write a query, and subscribe like any other Angular data source. Types flow through with GraphQL Code Generator.
Learn about queriesimport { Component, inject } from '@angular/core';
import { Apollo, gql } from 'apollo-angular';
const GET_POSTS = gql`
query GetPosts {
posts {
id
title
}
}
`;
@Component({ selector: 'app-posts', template: '...' })
export class PostsComponent {
posts$ = inject(Apollo).watchQuery({ query: GET_POSTS }).valueChanges;
}Learn more
Get started
Install the packages, create the Apollo module, and run your first query.
Setup guide →Caching
Configure the normalized cache, control field behavior, and keep the UI in sync after mutations.
Caching docs →Testing
Mock the GraphQL layer and test components and services in isolation.
Testing guide →
Discover the complete ecosystem of tools and libraries
Complete GraphQL Federation Stack
Our libraries to support all your GraphQL needs
Explore the Ecosystem