Top 5 Reasons to Use Meteor.js

Abhilash Anandan's Picture
January 03, 2017

Over 70% of our customers come back to us for subsequent projects. And lately, we’ve been talking to them about Meteor.js. A lot! We adopted Meteor.js in 2014, and now, three years later, we have fallen in love with it. We developed Repoto – a pre-learning Reporting Tool that’s now creating waves in the market. Our customers are happy with the Meteor.js for these 10 reasons:

1. Your applications are real-time by default
This might not seem so important at first, but once you see Meteor.js in action; there is no looking back. It’s more than just fast, it’s lightning fast. Major companies like Twitter and Facebook are moving towards a real-time web. It’s an inevitable change. Sooner than you expect, users will expect web applications to work near-instantaneously. With Meteor, you’ll be miles ahead of the competition.

2. Very rapid prototyping and produces cross-platform code
Application development in Meteor is extremely fast. It has one of the shortest development spans due to increased productivity. Get more done with less. One of Meteor’s key principles is “Simplicity improves productivity”. And the best part about Meteor is that mobile support is built in. Mobile apps are generated from the same codebase. Building and deploying a simple chat app to iOS takes just about an hour.

Hot code push, just as the name says, is another hot feature. It enables the developer to publish to the market (App Store/Play Store) only once. Subsequent updates will be pushed by the Meteor server to the app's LocalStorage (hot code push), and the app will also reload itself. Traditionally, in the App Store, adding such updates requires resubmitting to the App Store painfully slow review process. And from the perspective of your customers, it is ground breaking because your customers do need to constantly keep updating the app to see new features. Isn’t that amazing? It makes your customers feel special.

3. Well-funded, with rapid and stable evolution
Meteor is very well-funded, and their business model revolves around their Galaxy cloud app hosting platform. Unlike other technologies whose business model revolves around their technological expertise. So in case the technology is not taken up as planned, the funding goes nil in no time. Galaxy is doing really well now and is generating ample revenue to sustain well. The Meteor Development Group has received $31.2M in funding so far in 3 rounds from 9 investors. One of the major investors are Andressen Horowitz, who has also invested in Twitter, Airbnb and Foursquare. Meteor founders and early employees include former Googlers, early employees at Asana, and the creator of Etherpad. This is a team that you can invest your full confidence in. You can see how fast the pace of development is by checking out their version history. It’s safe to say that Meteor is here to stay.

4. Security is built-in
Dan Dascalescu has neatly laid out a list of security features that are specific to Meteor and why it makes Meteor great.

  • Meteor security design principles include code vs. data and client vs. server separation, stateful connections that must be deliberately authenticated, and allow/deny rules for database access.
  • All user input is HTML-escaped when being displayed back to the client, thanks to the Handlebars-like {{...}} templates - a first defense against XSS. Furthermore, Content Security Policy support is provided by the browser-policy-* core packages. Browser-policy offers a very easy-to-use but powerful mechanism to prevent a large variety of attacks with only a few lines of code. Lastly, Meteor security guidelines advise on how to foil the remaining attack types (sanitize user-entered URLs and CSS).
  • MongoDB is by its nature more resistant against database injections than SQL because it doesn't parse inputs, but there are still things to watch out for.
  • By using browser storage instead of hijackable session cookies, CSRF attacks are impossible.
  • Meteor uses the best crypto to store hashed passwords - bcrypt.
  • Meteor provides fine-grained control over method calls and database access -- see Discover Meteor - Setting the Security Record Straight.
  • For the paranoid, a full-database encryption layer that runs on top of Meteor exists, called Mylar. It stores only encrypted data on the server, and decrypts data only in users' browsers. Our developers have been trained to keep UX and security as the core while building an application. Apart from the already tightened security, we have our own list of security strengthening methods and processes.

5. Scalability
Galaxy was released on October 5, 2015, and it is expected that it will scales very well.

  • Meteor is built on top of Node.js and MongoDB. Node is notoriously scalable - 1 million concurrent connections!. Node is faster than PHP. PayPal rewrote with Node.js their account overview page, one of the most trafficked apps on the website and formerly written in Java. The result: 35% decrease in the average response time, and built almost twice as fast thanks to engineers being able to work full-stack in JavaScript. Node.js is used at Yahoo!, eBay, Dow Jones, Microsoft, Uber and LinkedIn.
  • MongoDB is also highly scalable - used to store petabytes of data and perform billions of operations daily at eBay, FIFA, Adobe, Craigslist, McAfee, Foursquare and others.
  • Meteor is most often used for new projects. These typically have users in the hundreds, thousands or tens of thousands. By the time your new web app will reach a million users, you'll have resources to scale, and Meteor will have been optimized even further. Subscriptions that before took seconds to return data, now take under 30ms.

There are several other reasons that made use decide that Meteor.js is the way forward. If you'd like to know more, send us a message and let's schedule a call.