Meteor and Angular 2 in combination

Spread the word

Angular 2 works a lot better with Meteor. You don’t need to bind data and you don’t need to pollute your scope in order to use it. Configurations with Meteor are just awesome. For instance, Angular will come with Server-Side-Rendering support and higher performant rendering concepts for the client.

Meteor is a Javascript platform. The platform means it is not just a framework to focus on specific tasks. It enables you to build everything for backend and frontend and all other components, such as a database to build your application. Meteor can work with several view layers. You can choose React, Blaze, or Angular. And soon Blaze 2.

Meteor is isomorphic, that means it is easy to reuse code on the client and server side. It makes communication between your different developers a lot better. If you where to work the MEAN way you actually can’t use the same code. There are differences which have been considered in Meteor.

Meteor is very tightly couples with MongoDB and Meteor Development Group (MDG) wants to decouple a lot of its tech stack and moved those components to npm in order to concentrate on its core competency. At the moment there are oplog tailing, DDP, pup sub functionality, MiniMongo, and optimistic UI but it seems to lack a lot of detailed documentation to better understand how they work. Currently you need to look into the code base on Github to understand the nitty-gritty.

The data-layer and the components that Meteor provides out of the box are amazing. Meteor uses DDP, an open protocol for realtime updates, on top of socket.io. So if I want to connect with a service in realtime I am going to use DDP. There are implementations to use Meteor clients to a lot of data sources. The protocol enables you to send an request, it waits for changes and distributes those changes to all connected clients.

Meteor has been focusing on an awesome developer experience when it comes to the build process. For instance, Meteor comes with ES6 support right out of the box. Meteor 1.3 it has a build in support for ES6 modules and makes development so much better! You can use it on the client and the server.

You want to use Angular 2 with Meteor for several reasons. First of all it is your own preference. There is a whole debate about which frontend framework tool is better. The advantage with Meteor is to be able to sync with some backend and/or a services. With Angular most of it very scoped and you are enabled to encapsulate components. Blaze just doesn’t cut it. It doesn’t hold up when you compare it to Angular or React. Blaze is MDG’s native frontend framework.

Angular 2 will be able to integrate with firebase and Relay, as well. Firebase gives you an opportunity to sync data with all you clients using software as a service. Meteor has basically done what firebase has done but it is open source and based on Node. The community around meteor is very active and has build a path to move your meteor app to Angular 2.

Angular 2 is build for this type of architecture. It is build to support large enterprise architectures which are hard to maintain. With Meteor you get all of it out of the box because you don’t need to care about the build steps. Meteor does it for you. Meteor seems to be a good backend for Angular 1 and Angular 2 apps and has changed the way people develop in a great way.

Leave a Reply