GraphQL requests can be made using your favorite HTTP clients since the underlying request/response format is usually JSON. But there’s more to a GraphQL client than just making HTTP requests, from caching to making real-time apps easy, Hasura provides support for all GraphQL Clients, including Relay
(preview). There’s a rich ecosystem of GraphQL clients.
Benefits of GraphQL Clients
GraphQL Subscriptions & websockets:
Consuming a real-time API over WebSockets usually requires a lot of setup. GraphQL Clients like Apollo, Urql make it easy to set it up.
GraphQL Fragments & data co-location:
Relay uses Fragments to declare data requirements for components and compose data requirements together. All data dependencies live alongside component definitions and make it easier to reason about requirements for UIs.