Michał Tyszkiewicz
1/25/2021
Last time I touched a bit on the combined benefits of using Vue with GraphQL via Apollo. It shouldn't come as a surprise that Vue isn't the exception here and the other big frameworks also let you do the same. So this time let’s take a look at Angular which also uses Apollo to combine its own features with those of GraphQL to make development even smoother and easier.
I’ve already touched on the benefits of using GraphQL previously, so let’s get a bit into Angular. As we know GraphQL is primarily a server-side technology, well Angular is the reverse its primarily client side (though it has had server side rendering for a while now through Angular Universal) This means a typical Angular application executes in the browser, rendering pages in the DOM in response to the user’s actions. Aside from the technicalities the key features paint a clear picture why using the framework is beneficial:
You might be thinking since its client side doesn't that mean it can’t be used with GraphQL to build web APIs? That’s where Apollo comes in, it lets you fetch data from your GraphQL server and use it for building apps using Angular. It's not just a bridge between the technologies and provides lots of additional features:
As always it's worth pointing out that while this can be a catch all solution for development it obviously will not fit everyone's tastes or needs. Angular by itself has a steep learning curve and if you throw GraphQL, Apollo and its libraries on top of that it can be quite a hassle to get a hang of. While it may not be the best solution for simple stuff it really shines when it comes to more complex projects which make use of the whole variety of available features. Both Apollo and especially GraphQL are cutting edge technologies that are currently gaining popularity in the dev community, so even if it's not the best solution for your current project it might be prudent to get a hang of them for the future.