
Show HN: CraftQL – A Rust CLI tool for GraphQL schemas manipulation and graphviz - yamafaktory
https://crates.io/crates/craftql
======
johnsonjo
Excellent work I have actually used another GraphQL to GraphViz program
before, but I don’t believe it allowed me to manipulate and output manipulated
data. This is really awesome though. I’ll have to give it a try next time I
need to graphviz my schema for my designers. By the way it also made me think
it would be awesome to have some sort of jq [1] like syntax to query GraphQL
Schemas with.

[1]: [https://stedolan.github.io/jq/](https://stedolan.github.io/jq/)

~~~
yamafaktory
Thanks a ton for the feedback!

You're right maybe the wording is wrong: query more than manipulate. By the
way, querying like jq might be an interesting new feature. Don't know exactly
in which direction it should go / what it should do / how exactly it should
look like (grammar)

N.B.: I have another project called jql which is actually a simpler - and
faster - jq made with Rust
[https://github.com/yamafaktory/jql](https://github.com/yamafaktory/jql)

~~~
johnsonjo
Wow that’s awesome you actually have a jq like implementation. Hmmm since it’s
a graph maybe you could go with something like openCypher [0] or GQL [1]
(possibly gremlin too) or maybe you could even query it with GraphQL (although
GraphQL only traverses down in a tree fashion)? Although some sort of simpler
jq like syntax might be able to make more sense. It would need to be able to
branch out somehow. I think even an emmet [2] like syntax might work well.

[0]: [http://www.jcc.com/resources/jcc-blogs-menu/blog-database-
dr...](http://www.jcc.com/resources/jcc-blogs-menu/blog-database-
dreams/122-property-graph-standards-update-july-2020)

[1]: [https://www.gqlstandards.org/gql-
blogs](https://www.gqlstandards.org/gql-blogs)

[2]: [https://docs.emmet.io/cheat-sheet/](https://docs.emmet.io/cheat-sheet/)

