I have two related applications one is Meteor/Mongo/Blaze the other is Meteor/Apollo/Vue and Im digging it.
The first app has been development for a couple years running an older version of Meteor with the classic setup.
But when tasked with building a second application, it was time to pull the trigger and try some new technology, while still staying within talking distance of the old stuff.
I went with Apollo for a variety of reasons. First off Apollo is developed by Meteor Dev Group, so as a Meteor dev, it felt right to stick with the home team. I used the standard Meteor Integration. Apollo is quite flexible and I’ve found it very easy to learn as I go for the most part. It’s not as opinionated as other graphql clients like Relay. Once I discovered patterns I liked, the rest has become mostly trivial when setting up new graphql queries/types/etc. I’ve enjoyed being able to add SQL resolvers with ease. I find the apollo syntax/structure as a benefit to the overall organization of my app’s data layers. It’s really opened up some new pathways in my overall app design without causing issues for my legacy code. I’ve written all of my Apollo server code in a Meteor package and share apollo data with both of my apps without any trouble. I haven’t encountered a massive roadblock or anything obscure issues yet, and I’ve got Apollo working fine in production (both web/iOS). Apollo also integrates with a handy REPL called graphiql
I chose to go with Vue because I’m not really enhancing my skills by further mastering blaze at this point, Angular brings up bad memories from a previous job, and I personally don’t enjoy React. Vue has some quirks and what not, but it’s pretty darn simple to use, and I value that simplicity. I feel like most of the popular frontend frameworks will do, it’s much more up to you, but if you haven’t played around with Vue – I say give it a try. Vue has integrations with Meteor/Apollo which I’ve found to work great without issue.
Best luck to you. Feel free to message me if you have any specific questions.