Looking for GraphQL experts? Nullhouse builds modern websites and webapps, using GraphQL as a core technology.
Need GraphQL experts?Contact us
A GraphQL primer
GraphQL is a query language for APIs which is used by API consumers to describe their data needs, the GraphQL server will return make sure to only return whatever was asked for and nothing more! This is a paradigm shift away from REST, where the consumer would ask for a resource and the server would determine what data would be returned.
This inversion of control results in very flexible APIs, while keeping it efficient at the same time. By allowing API consumers to declare their data needs, a single GraphQL API will be able to serve a wide range of client applications. Imagine a desktop, mobile and a smart TV client, each with their own set of data requirements.
GraphQL ❤️ React
A GraphQL API can very well be used as a standalone API. However, we've found that it's especially effective when combined with React as the UI library. GraphQL clients such as Apollo and Relay offer seamless intergration mechanisms, and provide a productive developer experience when connecting a React frontend to a GraphQL API.
Data management is a hot topic in the React world, and GraphQL has become an essential part in our data management stack. Allowing us to define our data needs at the component level ensures we can quickly iterate on the frontend, without having to wait until the backend has implemented our specific data requirements.
How can we help you
Regardless of whether it's a greenfield or an existing app, we can help you connect your frontend to a GraphQL API.
Especially for teams with a traditional REST background, it will require a change of mindset when setting up an effective GraphQL API. We can help you with the design and implementation of this API.
We can help you design a decent setup for your GraphQL stack. Doing so we'll follow the Principled GraphQL guidelines, which provide guidance regarding integrity, agility and operations.
GraphQL performance audit
With great power comes great responsibility. The attentive reader may have noticed a major pitfall of GraphQL. Namely, when giving the client the freedom to determine what data is requested, it is possible for clients to cause performance bottlenecks on your server. This is a non-trivial problem, and requires a critical look at the design, and might require for certain safeguards to be built in.