DEV Community

Cover image for What is Hasura? What are the differences between Hasura and Apollo Graphql?
Furkan Gulsen
Furkan Gulsen

Posted on

What is Hasura? What are the differences between Hasura and Apollo Graphql?

Hasura is an open-source engine that connects to your databases and microservices and automatically generates a GraphQL API for them. It provides a number of features on top of the API, including an intuitive console for querying the API, real-time updates using GraphQL subscriptions, and end-to-end tracing for debugging GraphQL queries.

Apollo is a set of tools for building GraphQL applications, including a server that implements the GraphQL specification and client libraries for making GraphQL queries from a client application. Apollo can be used with any backend that exposes a GraphQL API, including Hasura.

So, while Hasura is a backend service for exposing a GraphQL API, Apollo is a set of tools for building applications that use a GraphQL API, whether it is provided by Hasura or another service.

Image description

  • Hasura provides a number of additional features on top of a GraphQL API, such as support for GraphQL subscriptions and triggering webhooks on database events.

  • Hasura allows you to build a GraphQL API on top of your existing databases and microservices, without writing any backend code. This can make it easier to get started with GraphQL, especially if you are already familiar with your existing data model.

  • Apollo, on the other hand, is more focused on providing tools for building GraphQL-based applications, such as client libraries for making GraphQL queries from a frontend application and a server for executing those queries.

  • You can use Hasura and Apollo together to build a GraphQL-based application. In this case, Hasura would provide the backend GraphQL API, and you could use Apollo's client libraries and server to build the frontend application and handle things like caching and performance optimization.

Top comments (0)