All modules:
apollo-adapters contains adapters for common date and big decimal GraphQL scalars.
apollo-annotations is a very small module that contains @ApolloExperimental and other annotations mainly useful for handling API lifecycle.
apollo-api contains the bare minimum symbols to compile the generated code and parse responses.
apollo-api-java contains the symbols needed to compile the Java models.
apollo-ast contains code to parse GraphQL documents and manipulate their Abstract Syntax Tree.
apollo-compiler is the low level compiler API used by apollo-gradle-plugin.
apollo-debug-server is a server that serves your normalized cache to the IntelliJ/Android Studio plugin.
apollo-engine-tests contains a list of tests for implementations of HttpEngine and WebSocketEngine.
apollo-execution contains code to execute GraphQL documents. apollo-execution requires coroutines and apollo-api.
apollo-gradle-plugin-external contains the Apollo Gradle plugin.
apollo-http-cache is a HTTP cache for your GraphQL operations. Compared to a regular HTTP cache, it also caches POST requests.
apollo-mpp-utils contains a few utilities for working with multiplatform projects.
apollo-normalized-cache contains ApolloStore and ApolloCacheInterceptor. It bridges ApolloClient and ApolloNormalizedCache.
apollo-normalized-cache-api is the low-level cache. It knows nothing about coroutines and/or apollo-runtime and contains a memory implementation of NormalizedCache.
apollo-normalized-cache-sqlite contains an implementation of NormalizedCache that uses SQLite to persist the data across app restarts.
apollo-runtime contains ApolloClient, networking code to execute your queries and subscriptions. This is the main entry point.
apollo-runtime-java is an implementation of ApolloClient that doesn't use coroutines and more generally is more friendly for Java callers.
apollo-rx2-support provides thin wrappers around kotlinx-coroutines-rx2.
apollo-rx2-support-java provides adapter from ApolloCall to their RxJava2 equivalent.
apollo-rx3-support provides thin wrappers around kotlinx-coroutines-rx3.
apollo-rx3-support-java provides adapter from ApolloCall to their RxJava3 equivalent.
apollo-testing-support contains:
apollo-tooling contains APIs to work with GraphQL schemas and operations as well as the GraphOS API. It is used from the CLI and Gradle plugin