I have not used it in production. It looks good to me wrt to code however i have not audited so can't say for sure. May be you can check in github discussions if anyone is using it in production
As mentioned in another comment, based on this repo and in combination with Prisma, WunderGraph can be used as an alternative to the ones you've mentioned. It's completely written in Go (WunderGraph) and Rust (Prisma engine) and going to be open sourced soon: https://wundergraph.com/
Comparison with other libraries(gqlgen,graph-gophers) would be good. Documentation is more focused on how it is implemented rather than how to use it. Does it solves N+1 problem? or custom code needs to be written for it like gqlgen?
Interested to understand how does this compares and relates to https://github.com/99designs/gqlgen. Especially in the area of type system, is this reflection based, materialized types?
gqlgen allows you to write GraphQL Servers with resolvers, etc.
graphql-go-tools implements not just the GraphQL specification but also comes with a GraphQL engine that is "thunk-based".
What this means is that you don't "implement" resolvers, you configure them. We then have a Query Planner, similar to a SQL database, that can make a stateless execution plan for a given GraphQL query. This plan can be cached and then executed, making it very efficient.
What's possible so far is that you can combine multiple GraphQL and REST APIs into a single unified GraphQL API. It also supports Apollo Federation as upstream, including subscriptions.
The whole system is very flexible and extensible so that you can implement a few interfaces and add support for e.g. gRPC or Kafka as upstream.
We're using the engine in WunderGraph to make it easy to configure and use: https://wundergraph.com/
What WunderGraph does is it gives you a TypeScript SDK to automatically configure the "unified graph" based on introspecting one or more DataSources, e.g. OpenAPI (REST), GraphQL, Federation and Databases like PostgreSQL, MySQL, Planetscale etc..
What problem does it solve? Using this engine, you can talk to multiple heterogenous systems as if they are one single GraphQL API, even though their sub protocols are different.
8 comments
[ 1.7 ms ] story [ 32.7 ms ] thread> While not directly comparable to hasura Why do you say so, seems comparable to Hasura?
What's possible so far is that you can combine multiple GraphQL and REST APIs into a single unified GraphQL API. It also supports Apollo Federation as upstream, including subscriptions.
The whole system is very flexible and extensible so that you can implement a few interfaces and add support for e.g. gRPC or Kafka as upstream.
We're using the engine in WunderGraph to make it easy to configure and use: https://wundergraph.com/ What WunderGraph does is it gives you a TypeScript SDK to automatically configure the "unified graph" based on introspecting one or more DataSources, e.g. OpenAPI (REST), GraphQL, Federation and Databases like PostgreSQL, MySQL, Planetscale etc..
What problem does it solve? Using this engine, you can talk to multiple heterogenous systems as if they are one single GraphQL API, even though their sub protocols are different.