genqlient
genqlient copied to clipboard
a truly type-safe Go GraphQL client
If you put `pointer: true` on a list-field, you get `[]*T` (or `[][]*T`, or...) which is probably what you wanted (so you can represent an required list of optional items,...
I kinda feel like this might be useful? But if you put the query in a Go file nearby, it's a lot less necessary.
For example if you have a field `doThing: DoThingMutation` or `error: MyError` we should be able to be a bit smarter than `DoThingDoThingMutation`/`ErrorMyError`, in the same way we currently shorten...
We could minify queries, optionally, to save space. If anyone really needs this, they could do it in `graphql.Client`, so that might be a better way to prototype.
Lots of clients do caching. We could too! Perhaps via a special client, or a query-option, depending.
You might want to be able to make an `_entities` query against another federation server (perhaps one of your peers). The `_entities` field is a bit arcane for humans, but...
A fun thing we can do, because we generate code, is to allow you to put in a pseudo-field like `__all`, which we expand to all the fields. That's probably...
It's unclear to me if there's a standard spec for this, but certainly it's something some people do, to save bytes or whatnot. Apollo has some fancy way of doing...
It's not totally clear how we would do this usefully. But it's something to think about!
Just as another way to handle optionality. Although mostly it's turning out to be an issue in inputs, not results, where this is less useful!