Michał Tyszkiewicz
10/8/2020
It took a while, but nevertheless, here it finally is - GraphQL Tools & Libraries Part 3. If you missed it here’s a link to part one & part two of GraphQL tools & libraries. Now let’s dig in.
Graphene Python is a library for building GraphQL APIs with Python. It’s declared goal is to provide a simple and extendable API to make devs lives easier. While fast and easy to use it’s also versatile and data-agnostic. Graphene offers:
Unlike many tools and libraries that aim to help here and there, Firecamp is a larger tool packed with features that aim to be a swiss army knife for API development. They describe it as a campsite for developers to test and enhance their work. It serves both as a multi-purpose dev tool and as a platform to test HTTPs, WebSocket, and GraphQl endpoints. Among noteworthy Firecamp features we will find:
Dgraph prides itself on being the only native GraphQL Database with a graph backend. It has some pretty ambitious goals as its description states:
Dgraph's goal is to provide Google production-level scale and throughput, with low enough latency to be serving real-time user queries, over terabytes of structured data.
Looking at it, the main advantages here is that it’s scalable and distributed while the biggest feature is ACID transactions. To put it short, it's a set of properties a database system maintains during transaction execution that guarantees data validity in spite of errors, power outages, and other problems.
Zeus is a clever GraphQL fetching tool with type-safe requests and responses. The key feature here is that it provides autocompletion for strongly typed queries for Javascript or TypeScript but not limited to that!
AWS AppSync is a powerful application development service that adds additional functionality on top of GraphQL. The key selling point here is that it reduces the amount of code you need to write and accelerates development by abstracting part of the backend.
Well, that’s it for part three. As you can see GraphQL is very flexible and using it can be made even more advantageous with the right tools. Some of those are small tools and libraries that will provide a few quality of life improvements, some are larger tools and services that will completely change the way you work with GraphQL. It’s obviously up to you to choose what works best for you and I sincerely hope I helped with that at least a little bit.