How to catch up on Meteor ecosystem progress in the last 6 months?


#1

Can anyone recommend some reading material to catch up on what has been happening in the meteor world in the past 6 months?

What is the recommended toolset for building a production-capable application today? What is Meteor really, today?

Specifically:

  1. How does Apollo fit into the picture of a modern Meteor app? Is it stable and production-ready yet? I read about the merits of GraphQL in a blog article, but what exactly is meant by “Apollo is the new data stack?” – is it intended as a replacement of Meteor’s current way of handling data using pub/sub… or is it a project that is completely independent of Meteor?
  2. How do React + Redux + Relay fit into the picture?
  3. Is everyone moving toward styling CSS using JS, using packages such as Rebass or Radium for custom components?
  4. Is FlowRouter the go-to routing option today (opposed to Iron Router)?
  5. Is Mantra the de-facto best-practices spec? How does it play along with Redux and other packages?
  6. Now that there is NPM support – what packages should we rely on from NPM and which ones from Atmosphere? What’s Atmosphere’s role today?
  7. What implications do all these changes, new tooling paradigms, etc. have on an existing, older Meteor application using MongoDB, pub/sub, SimpleSchema?
  8. Now that React is the go-to for the view layer: what’s the equivalent of AutoForm for the React world?

Thanks!


#2

You could start with https://www.discovermeteor.com/blog/study-plan-meteor-1-3/

To answer your questions (as best as I can):

  1. It seems probably that Apollo will eventually replace DDP and the current Meteor data stack, but personally I feel like at this point the “traditional” way of doing things is still valid. Of course if you can switch to Apollo from the start it’s probably even better in the long term.

  2. Apollo is an alternative to Relay, so you wouldn’t really use Relay anyway. React is now the de factor front-end framework for Meteor. And Redux will eventually replace Minimongo (since it’s part of Apollo) but for now you can still build Meteor apps without it.

  3. No, you can still use regular CSS. Or even a combination of both (regular CSS for global styles, JS-CSS for local, component-specific styles).

  4. Iron Router is over, but I would probably recommend React Router over FlowRouter just to maximize your compatibility with the rest of the React world.

  5. Not sure about that one.

  6. You should try to use as few Meteor packages as you can, Use NPM versions whenever possible. The only Meteor packages you really need are things like SimpleSchema, collection-hooks, etc.

  7. I’m pretty sure older applications will keep on working as they are. But personally I would try to keep my codebase up to date brick by brick. Switch to React Router one week, then Redux the next, then Apollo, etc.

  8. There isn’t one, or rather everybody has their own (here’s mine). There’s also pure-React stuff like Redux Form.


#3
  1. Mantra is the architecture proposed by Kadira. Use with Redux is mainly involved with the containers created using React Komposer & actions which would probably do async operations and dispatch state changes. Other packages should fit in without too much trouble. MDG’s recommendation is in the guide

In terms of folder structure I think Mantra’s is more straightforward.