Cool toy! A lot of work probably went into this and the presentation is pretty stellar. I'm not sure if I'd use it over VSCode, but I bookmarked it!
A tangential complaint: I really wish GraphQL had annotations for derived types. I think it's so dumb how you will often have (to use one of the site's examples) a Book type, but then also need a CreateBookInput input type and a UpdateBookInput input type. These latter two will often be strict subsets of Book. It's very error prone, especially when you start changing root types, but forget about these derived input/update types.
Hi this is how GraphQL works. We have some experimental CRUD nod but the main problem is how to have it works both ways. Today, Working draft of GraphQL doesnt allow to make types input types.
Do I understand the argument you are making correctly?
1. GP wants to say “the input to createBook is the Book type minus bookId”
2. GraphQL does not allow one to specify the type “Book minus bookId”
3. Therefore you don’t allow it.
And maybe there is a point 2.b (which I can’t tell if you are making): we can’t have the type “book minus bookId” in our representation because we save in some “pure GraphQL” format and so can’t infer that type when we reload from a saved representation?
If somebody needs help I am here to help. This is an alpha version, but you can create fully operational mock backend with it. This allows you to start frontend and backend dev of an application at once, you just need to agree about desing of the database endpoints etc.
I only have one point of criticism (although this is really nice).
It's a little strange to have the responses changing so drastically between requests. Sometimes nothing is returned, sometimes one item is returned, and sometimes many items are returned. I would prefer if the responses were a little more consistent, or if this behavior was configurable.
Use required types ! :) It is on purpose, but I understand it might be misleading. Thank you for your feedback. I made UI myself and as a developer I expect to get tons of UI/UX issues. Thank you!
A tangential complaint: I really wish GraphQL had annotations for derived types. I think it's so dumb how you will often have (to use one of the site's examples) a Book type, but then also need a CreateBookInput input type and a UpdateBookInput input type. These latter two will often be strict subsets of Book. It's very error prone, especially when you start changing root types, but forget about these derived input/update types.