Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ExpressJS vs MeteorJS [closed]

Tags:

I'm caught in a fix. I've learned ExpressJS to develop a web app and I'm a quarter of my way done. Then comes along Meteor which was very recently released. It has gotten a lot of press, funding and it has the benefit of being able to port to Cordova. Now I'm not sure whether to stick to ExpressJS or transition to Meteor.

Key Points: Scalability, Ease of use, Development efficiency

like image 546
ShiviRox Avatar asked Nov 15 '14 04:11

ShiviRox


2 Answers

Express = MVC Framework built in Javascript and is powered by Node.

Meteor = Full Stack that has the front-end and back-end components to build a real-time application.

To create the same implementation of Meteor using Express, you need to look at the MEAN stack, which includes MongoDB, Express, AngularJS, and Node. You can create the same thing in Meteor that you can with the MEAN stack, you are just going to be doing a lot more learning especially with AngularJS. Express and Angular are taken care of in Meteor using Meteor's template system and Blaze.

I would stick with Meteor. It still has a few drawbacks, but there are workarounds. It's amazing what you can throw together in little time.

like image 173
OneSneakyMofo Avatar answered Sep 18 '22 11:09

OneSneakyMofo


You're comparing oranges with potatoes. Expressjs is backend and Meteor is fullstack, such a comparison is unfair at all!

I've been working with Meteor since 0.8 and I suffered in the skin the pain of upgrading, removing old vital third party packages, etc. you get the idea. Although Meteor reached 1.0, I don't think that the mobile component is quite ready, check github issues on it.

I think Meteor is ready for building online platforms. If you find that it doesn't play well in the mobile, you can still maintain your Meteor application and create an API on top of it, you can find packages on atmospherejs.com for it (or even use iron:router). That's what you would with Expressjs: create an API to be used by mobile devices.

About your Key Points of Meteor: Scalability - It's possible to scale Meteor although you won't a good article about it but if you take a look at Kadira, Arunoda managed to scale it. Ease of use - It's fairly easy to write a Meteor application in the beginning but in the long run you'll face some problems like I faced. Development efficiency - My experience in team wasn't that positive, we had bad architectural design choices and some bugs because new developers (even experienced ones) don't get Meteor, example: Instead of using Collections allow and deny rules, they use Meteor.methods for everything which doesn't translate to security. Some even publish the entire database to the client and say: Works great on my localhost :D

About express: I have little experience on it but the comparing it with Meteor, it's not fair at all. Meteor doesn't not the same purpose as Expressjs.

A comparison with MEAN Stack would make much more sense: http://mean.io/

like image 29
Mário Avatar answered Sep 16 '22 11:09

Mário