Meteor vs Webpack vs Parcel
Joe Pea
Posted on July 5, 2019
Yeah, that's right, I said Meteor!
Meteor is often overlooked. It is highly underrated for reasons I can not explain. In fact, this is only the 10th post tagged meteor
on dev.to!
Meteor is a fantastic piece of software.
Ben Newman -- one of the people who currently maintain Meteor -- worked at Facebook before Meteor Development Group. At Facebook, he wrote Regenerator. Regenerator is a tool that Babel uses under the hood for transpiled async functions
.
The chances are that you wrote async function
s at some point, and they were handled under the hood by Ben Newman's Regenerator!. Some of you may still transpile async function
s for older browsers and are thus still using Regenerator today.
This guy Ben works on Meteor now, and his code is f***ing clean; something to be inspired by.
Meteor vs Webpack? Meteor vs Parcel? What?
You may think of Meteor as an Application Framework.
Well, you would be sort of right.
Meteor is a collection of libraries and tools, that when used together (for example in the default application that the CLI tool scaffolds for you) can be considered an application framework.
But you don't have to use all the pieces all at once.
For some odd reason, people think using Meteor is all or nothing. Maybe this is why it is underrated, and causing people to waste their time re-implementing all the awesome things Meteor can already do for you.
This article could be called "Meteor vs Ember vs Angular", or "Meteor vs MEAN", or "Meteor Blaze vs React vs Vue", or "Meteor vs Express vs Koa.js", or "Meteor vs Passport.js vs Permit", or "Meteor vs Ionic Framework".
Did you know, that in Meteor's core there is an amazing build system and bundler capable of building your JavaScript/TypeScript/CoffeeScript/Vue/JSX/Angular/Sass/Less/Whatever not just for web (old targets and new targets), but also for iOS and for Android as mobile applications?
You could use Meteor just for the purpose of bundling and shipping your code with possibly the most sophisticated web-based build system and bundler in existence, and save yourself a lot of time.
This fact alone is something you should consider!
Okay, so what are the differences?
Meteor's Build System is, out of the box, similar to Parcel in the sense that you hit the ground running with default settings and no fuss.
Meteor's build system is also highly pluggable like Webpack. It is easy to make Meteor "build plugins" to handle any files types (equivalent to "loaders" in Webpack).
Let me tell you what Meteor has that no other bundler has:
Meteor has a space-age system for building your code for old and new targets, and automatically serving specific bundles to the runtime environment based on what it detects the environment to be, with zero config required!
Meteor allows you to publish your web-based app to iOS or Android. You only need a few simple commands to add build targets:
meteor add-platform android
meteor add-platform ios
After installing prerequisites for building mobile apps in your OS (XCode on macOS, or Android Studio on any OS), then you can simply run your app in a mobile emulator or actual device with simple commands:
meteor run ios # runs in an iOS emulator
meteor run ios-device # runs on your connected iOS device
meteor run android # runs in an Android emulator
meteor run android-device # runs in your connected Android device
meteor run ios android-device # run on multiple targets
You do not get this from any other bundler! 🚀
Honestly, I encourage you to take a look. All aspects of Meteor (the not-framework collection of tools), including the Build System, are documented.
That's all I'll write here. If you have any questions, I'm happy to try and answer them! :)
To learn more about "Meteor vs Webpack vs Parcel", I recommend reading an article on Webpack vs Parcel (and for that matter looking up "Webpack vs Browserify" and "Webpack vs Rollup" if you don't already know), and checking out Meteor's Build System.
Come to Meteor Night on Tuesday July 9th to hear Ben Newman and others discuss Meteor.
Posted on July 5, 2019
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.