Meteor’s Apollo unites client apps and back-end databases

Developers of the Meteor JavaScript framework this week are introducing Apollo, a data stack leveraging Facebook's GraphQL query language and managing data access from mobile and browser clients.

Available as a technical preview, Apollo features a client that can be dropped into a JavaScript front end, where developers can use data from a GraphQL server. An API enables apps to be developed on top of services. Eventually, Apollo will serve as the data stack inside of Meteor, and it will work with other JavaScript technologies.

"Apollo is our vision for the data stack of the future. It includes both client- and server-side components that live between your UI -- React, Angular, or anything else -- and your back-end services -- MongoDB, SQL, REST, etc. -- shuttling data between the two," said Sashko Stubailo, a core developer at Meteor. "You query your data with GraphQL and the data stack handles the rest."

Apollo manages data flow between clients like mobile apps, JavaScript apps, and microservices, said Meteor Vice President of Product Matt DeBergalis. Developers get lower latency and better client performance, and they have to write less code by using Apollo as a coordinating layer. As such, clients can query services in a structured and efficient manner.

With Apollo, an open source JavaScript client is installed into a mobile or browser application that talks to a server in the cloud. An Apollo server component, acting as an API gateway, fetches data from back-end microservices, sending it to the client. Initially, Apollo is supported on JavaScript, but native support for iOS and Android apps will arrive soon.

DeBergalis sees Apollo as ideal for applications needing structure and performance and where time to market is critical. An application with a legacy server written in Microsoft's .Net platform and a client written in React would be an ideal use case. Developers can build modern clients on top of legacy services without having to update the service layer at the same time as the client. Apollo works with any database running a JavaScript driver, which is most databases, DeBergalis said.


Paul Krill

Zur Startseite