Our great sponsors
-
Hasura
Blazing fast, instant realtime GraphQL APIs on your DB with fine grained access control, also trigger webhooks on database events.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Spanner-like tools such as Hasura came to the seen and attempted to make this easier to help generate much of the boilerplate, but the problem is that no matter how much these spanner tools auto generate, there is still a rigid disconnection between the GraphQL API and the database layer. GraphQL APIs allow front-end developers to easily query deep relationships in the database. What would take dozens of lines of code to join tables simply becomes asking for the nested field that links to the type.
When GraphQL came on the seen, it was made as a way to give a backend flexibility, but there was only one problem, the backend of the GraphQL layer was still very rigid. GraphQL is language and database agnostic meaning that it can be implemented with a variety of programming languages and backed by any database model including rdbms and noSQL databases. Since GraphQL is not a data storage engine, but only a layer on top of an existing database, this grows the complexity of application development. Not only does a full stack developer need to define their data structure in their GraphQL schema, but they also need to design the models of their data structure in their database.
Let me introduce you to Dgraph! Dgraph is a spanner-like backend solution that at its core is a key-value store, but at the API level provided as an endpoint inside of the core provides a GraphQL API.
Related posts
- Hasura V3 Engine is in alpha
- Hasura: Instant GraphQL on your Postgres data
- Writing filters, sorting and pagination for all my queries is exhausting and repetitive. Is there a better way?
-
Hasura VS graphweaver - a user suggested alternative
2 projects | 23 Aug 2023
- Instant APIs (GraphQL and REST) for MariaDB