0. Introduction
Welcome! This tutorial demonstrates adding the Apollo Kotlin SDK to an app to communicate with a GraphQL server. In this tutorial you will learn how to:
-
Download a schema
-
Write queries and mutations to generate the corresponding Kotlin models
Handle errors and loading states
Handle pagination
Authenticate with a backend server
Use subscriptions to receive real-time updates
The tutorial uses an instance of Apollo Server hosted on Heroku, and an GraphOS Studio Sandbox which connects to that server. If you're curious about how to build your own server, see the Apollo full-stack tutorial.
All of the code for this tutorial is available on GitHub.
What are you building?
In this tutorial, you'll build an app that allows you to book a seat on a rocket sent to space by SpaceX.
The tutorial uses the following tools and frameworks:
Kotlin and Kotlin coroutines
Jetpack Compose and Navigation Component for the UI
Coil for image loading
To focus on the important parts, this tutorial uses a starter project available at https://github.com/apollographql/apollo-kotlin-tutorial so you don't have to deal with project setup and boilerplate.
If you encounter any issues during the tutorial, feel free to ask questions by either opening an issue on our GitHub repo, joining the community or stopping by our channel in the KotlinLang Slack(get your invite here).