Looks nice. How does it compare to graphql-code-generator? I've been using that tool for years and I'm happy with it, but always glad for improved tools.
Same here. I’ve tried Apollo but switched to react query and graphql codegen. Probably not going to switch again without reason— would be interesting to see the differences. Title is a little off putting because it sounds like there’s a little precooked bias
So I guess this is a recommended option from Hasura to generate typed API bindings; I was going to try following that tutorial at some point, looks pretty slick.
Am I understanding correctly that this tool works with something like Hasura (GraphQL backend) to generate an API schema / query client that can be used with something like react-query to retrieve data?
Why I am posting this? 2 reasons: GraphQL Zeus reached 4.0 and is compatible with huuge schemas, second reason I received a great contribution with full readme rewrite and I packaged it into docs site
Not a fan of uselessly sensational titles, but will give it a try.
Currently using urql and codegen that already handle that pretty well. What is your edge?
I plan to integrate urql. I generate the whole lib with complicated generic types, so you don't have to write gql queries and run codegen. Just generate once and write interactive queries. No watching and stuff
Something I’ve been wondering: does graphQL Zeus increase code size as schema grows? I get that there’s a constant code size for the package, but I’m running on cloudflare workers for some processes, and scripts have a limit of 1MB. I’m using Hasura, so the gql schema is quite large. I’d like to switch over to Zeus for typings, but I’m worried it’ll push me over the 1MB limit.
above now :). I can do it again. Zeus allows you to generate client library from schema - not from queries. Then you can write queries in TS, you will receive:
- typed args
- typed response
It also offers selectors from which you can create typings for your response objects if you are persisting those somewhere in state, so yeah it is a game changer not only for GraphQL, but for communication with backend and Frontend developer experience.
To be honest it has also some cons, for example:
- variables are custom implementation and don't have typings as for now
- some edge cases are not supported yet