Introduction
Apollo Orbit is a full-featured Apollo Client for Angular.
Apollo Client is a GraphQL client with advanced caching capabilities which can be used to fetch, cache, and modify application data, all while automatically updating your Angular UI.
Apollo Orbit brings the power of Apollo Client to Angular while focusing on developer experience, reliability and performance.
Why Apollo Orbit?β
π Angular Integrationβ
APIs work naturally with Angular's dependency injection, change detection, and reactive patterns. Supports Angular HTTP interceptors for auth and request handling.
β‘ Reactive APIsβ
Use Signals or RxJS depending on your needs. Signals fit neatly into components, while RxJS handles complex async flows.
π‘οΈ Type Safetyβ
Fully type-safe with codegen integrationβcatch schema changes at compile time. Queries, mutations, and subscriptions are strongly typed with IntelliSense support.
π― Developer Experienceβ
- Consistent APIs: Unified, type-safe for queries, mutations, subscriptions, and fragments
- Docs: Clear examples and patterns
- Tooling: Debug with Apollo Client Devtools
πΌ Enterprise-Readyβ
- Proven: Battle-tested in production for 5+ years powering critical apps
- Tree-Shakeable: Bundle only what you use
- SSR Support: Compatible with server-side rendering
- Multi-Client: Connect to multiple GraphQL endpoints
- Testing: Built-in support for testing with Apollo Client's testing utilities
π§ State Management (Optional)β
Turn Apollo Client into a full state management solution with the optional state
module:
- Comprehensive state management: Apollo Orbit combines the strengths of Apollo Client and event based state management (flux architecture), providing a unified solution for managing both local and remote data.
- Decoupling: Separate state management code from component code using modular
state
definitions andaction
handlers. - Modular: Each
state
definition manages its own slice of the cache. - Separation of concerns (SoC): Different
state
slices can handle the sameMutation
orAction
independently. - Event-driven architecture: Actions enable event-driven application design.
- Testability:
state
logic can be tested in isolation, enhancing testability.