I’ve published quite a few Meteor packages that people still use, but I haven’t used Meteor in over a year so I’m in no position to answer questions or review PRs. If these packages are to live on, they will need a people to step up and maintain them. Please let me know if you are interested in maintaining any of these:
Some of you may be wondering why I don’t use Meteor anymore. Meteor is awesome, particularly for beginners, but it’s too easy to outgrow.
- If you want to use a database other than MongoDb, that’s just not an option (although Apollo will eventually answer that).
- If you want to build a social network application, there’s no infrastructure in place to stream posts into users’ feeds in a scalable efficient way.
- If you want to build a scaleable chat application, oplog tailing is going to hold you back.
- If you want to build a React Native app, you need to learn a new set of tools and hack together a way of speaking to Meteor’s backend. There are packages to help with this, but why isn’t it all integrated into the Meteor CLI tool to make everything easy?
- If you have a large application that you want to split into multiple entry points and asynchronously load source code on the client, you can’t do that.
- If you want 200ms rebuild times and hot module replacement, you don’t get that either.
- If you want to build a continuous integration pipeline with git hooks, unit tests, functional/integration tests, and automated deployments, you’ll have to figure that out yourself.
Granted, there are solutions to some of these points, and MDG has been doing a good job integrating NPM packages and ES6 modules. But Meteor is not growing at the speed that technology is growing. I learned how to program 3 years ago just by playing around with Meteor – I am very grateful for Meteor and major kudos for MDG – but I went from zero to beyond Meteor’s capabilities in less than 2 years!
But I also really miss Meteor because it was so easy to build something. When I had a few hours to spare and wanted to mess around with an idea, I could get something deployed and live in no time – it was glorious! But now, I have to juggle the options, choose a hosting solution, and this stuff squanders my creativity. So I do wish the best for Meteor, and maybe someday we will reunite.
So what am I using now? FeathersJS is awesome. There’s more to learn and figure out, but its the right way to structure a Meteor-like application. You can use any database and get reactivity, everything is structured as a microservice by default, and you can scale this architecture in whatever way you need to meet the needs of your application. However Serverless looks really awesome, but its really hard to get started unless you’re already intimately familiar with AWS services. And on the frontend, I use create-react-app.
At the end of the day, these are no replacement for Meteor in terms of convenience and getting your creative ideas onscreen, but if you want to build a social app or a chat application, Meteor just isn’t a good choice.