There are so many misconceptions around about what is Meteor exactly?
Why is it better and easier?
There are some killer features like the zero configuration build tool that offer a ton of really excellent build tool facilities like code splitting and dynamic imports and some real time features like tracker that comes with meteor, are really excellent. These real time things are awesome and honestly building a real-time application could not be any faster. I just don’t think anything could compare to the speed at which you are get up and running by using Meteor.
So while Meteor is primarily known for its real time features, it is not necessarily its best features in my opinion. I mean not to say that those features are not good, because they are certainly excellent. However, some of the really excellent things in meteor is just how nicely integrated the front-end is with the back-end. Now what I mean is that; well instead of having to write an API and hit an API and really have a separate front-end and back-end you can use feature like meteor methods where you define your server side functionality on the server and then call your methods directly from the client side and not have to interact and not have to hit an API somewhere. What I really like about Meteor is that you just end up having an application where the client and the server are working together in such a way that is super nice.
Not only that, but the accounts and user authentication system that comes within meteor is excellent as well, it takes all of the guesswork out. One of the least fun aspects of any project which is getting authentication up and running and in terms of meteor, you add a couple of packages such as Accounts and may be some service packages like Accounts-Facebook or Accounts-Google or something like that and well you have access to nice secure logins and something you don’t have to worry about ever again.
Another thing I like the most about meteor is how fast it is to get up and running. If you are not worried about security and you are just doing like hacking project and you just want to test and idea, you can get up and running in like no time and even do really insecure client side writes to your database. I mean you can write directly from the client side to your database if you want. Now obviously this is not something you are going to want to keep in your site when you go to production or anything like that, but it makes testing out ideas and getting started just insanely fast and some of the real time stuff definitely WOWs people upon starting.
When meteor first came out, one of the criticism was that, there is no import system so you cannot use NPM. It was just sort of a fancy real-time app thing that was sort of stuck in its own. However, since then, they’ve added NPM support they’ve added a standard import system and their build tool is just absolutely top-notch. Meteor is become an excellent platform for building standard React or Angular or VueJS applications.
I used Meteor with React on many websites I built and I have really enjoyed, just how easy it made everything work. I didn’t have to code a separate backend, it’s all a part of one codebase that communicates really smoothly. I have noticed, the sites built with Meteor are super-fast and this has to do with the code splitting and stuff like that I am getting from Meteor build tool.
So again what is Meteor? Meteor is a platform for building NodeJS apps that are client side and server side and include database. It uses all of the standard NodeJS that you are used to, so you can quickly get up and running some really excellent applications using whatever front-end framework of your choice.
The guide section available on Meteor website, is an excellent source of documentation. One of the thing I always loved about Meteor is just how seriously they’ve taken their documentation. If you want to find anything about this platform, its right there.
Now one of the criticism of meteor is that scaling meteor applications is difficult. That’s actually really not so true. Scaling a Meteor application can be difficult if you have a ton of collections that are all real time and you are having to deal with all these real time collections, you are not using indexes and you are not essentially writing excellent code. However, if you follow best practices, a meteor application is as scalable as anything else.