11. 11
o You’re already using it
WHAT IS
GRAPHQL ?
o A query language
created by Facebook
in 2012 (and made
public in July 2015)
12. 12
WHAT IS
GRAPHQL ?
o GraphQL is not a
database query
language like SQL
o It’s an application
layer query
language that you
can use with any
backend — SQL,
MongoDB, Redis, etc.
13. 13
WHAT IS
GRAPHQL ? o Provides a common
interface between the client
and the server for data
fetching and manipulations.
14. 14
o GraphQL queries mirror
their response
o GraphQL naturally
follows hierarchical
relationships between
objects
o GraphQL is strongly
typed
o GraphQL is backwards
compatible
WHAT MAKE
SO EXCITING ?
17. 17
WHAT IS
o Apollo Stack consists
of a pair of libraries
(Server and Client)
o Add support for not-
MongoDBs to Meteor
o Bring the great
features of both
Meteor & GraphQL !
Before that, Atmosphere packages were extracted with a tar library from npm, so it was much slower.
This is meteor saying that OK I'm gonna be focusing on meteor from now on and I'll let the community work on blaze. Therefore, I'm pretty sure the upcoming updates of meteor are gonna be awesome.
When running meteor from a checkout, you must now update these submodules by running
git submodule update --init --recursive
in the root directory of your meteor checkout.
(1) ... The queries GRAPHQL makes are client specified, and their responses mirror them. In other words, what you seek is what you get. This makes the server’s response predictable, as well as to filter out only the data of your need.
(2) ... GRAPHQL is hierarchical, whereas a RESTful service may require complex join statements in SQL.
(3) ... So given a query, tooling can ensure that the query is both syntactically correct and valid within the GraphQL type system before execution.
(4) ... When you're adding new features, additional fields may be added to the server, but GRAPHQL enmake sure that theresponses are still exactly the same.
So why GRAPHQL?
Meteor is great. But having only MongoDB as the only option might not be suitable for every use case while GRAPHQL can be used with any backend
Therefore, …
Apollo comes to the rescue
Apollo Is a stack that consists of a pair of libraries: server and client.
And as I have mentioned it adds the support of non MongoDBs to Meteor.
Which of course brings the great feature of both.
This is Apollo Stack architecture, it follows the same old intermediary architecture. Apollo sit in between the client and backend as middleman. It listens to the queries from the client, go on and get data from the backend and return the response to the client.