Apollo, the data stack for modern apps

15 September 2016

To meet the challenges linked to the exponentially growing data, Meteor introduces Apollo, an open source JavaScript client for mobile and browser applications that talks to a server in the cloud. This new technology has the potential not only to revolutionize the industry but re-position Meteor as a top full-stack platform.

Meteor decided to decouple a lot of its old tech stack and become as transparent as possible. It is clear that the software community is doing its best to publish reactive data quickly, as users expect more from the modern web and mobile apps. To meet these demands, Meteor came up with Apollo, which predicts customer needs, even get in-memory client caching by using a Reactive Apollo GraphQL layer and make it open source.

What are the most common problems in data stack?

The most common feature request for the Meteor framework is better support for different data sources, referring to SQL databases, REST endpoints or Redis and RethinkDB.

The business environment determined the community to create a generation data layer in Meteor which involves a unified layer, that can be used by client applications to communicate with the server endpoints.

Is Reactive GraphQL or Apollo solving the problems?

This is a huge topic, and for those who don’t know, Apollo’s vision is to include both client and server-side components in the UI interface. The core of Apollo is Reactive GraphQL, which comes with a full advantage package as mentioned below:

  • Full autonomy. Right now there is no restriction on data sources. GraphQL is in some ways more powerful and straightforward than MongoDB because it is the only language that lets you get all data at once. The best thing is that it doesn’t matter where the data is coming from, so front-end developers don’t have to be concerned about it, and backend developers are free to move around data or services as needed. This means that the data can be pulled from different data sources, and you get a combined outcome.
  • Easier data management. The solution provides simple bindings that makes it easier to publish data from REST services, SQL and MongoDB.
  • Controlled environment. The plus comes from the Reactive Graph queries that can track changes to their underlying data, allowing the clients to find out when the results have changed. Besides, there are options for analyzing and optimizing the queries that make scaling apps straightforward.
  • API Controller. A GraphQL client has access to the same endpoints but through a nicer, more performant API. GraphQL helps applications fetch data more efficiently and avoid duplication of server logic (which can occur with custom endpoints).

From a business standpoint, there is an exciting future ahead of Apollo that will bring value to Meteor apps. The companies that adopt it now will have a competitive advantage over the coming years and will be well-positioned to benefit from the advances in this rapidly evolving ecosystem.

Photo source: apollostack.com

Join our newsletter

Subscribe to the newsletter to stay updated with the latest industry news
and our activities such as blogs and events!