GraphQL is both a query language (like SQL) and a runtime. In other words, it's a language that can be used to retrieve and modify data and also the operations which accept and process those data fetches and modifications.
Here are just a few of the benefits of using Graphql.
Fetching three data models:
(diagram courtesy of toptal.com)
In Ionic, you'll use the Apollo Client to talk to the server. You must also define the queries and/or mutations you want to send to the server.
(diagram courtesy of toptal.com)
Here's a sample GraphQL server hosted on launchpad.graphql.com. Launchpad is an online code editor that allows you to spin-up and share GraphQL servers. It's comparable to codesandbox.io.
This repo contains a task app programmed with Ionic 4. It has the Apollo Client implemented and points to a sample GraphQL server hosted on launchpad.
GraphQL is both a query language and a runtime environment. The runtime environment is used to process GraphQL queries