Ever wondered how easy it is to create your first app for iOS? It really isn’t.
There are many pitfalls to consider.
I’ll describe the process of developing your first app for iOS using React Native as it was actual in October, 2016.

Update * This article is completely outdated as Meteor supports npm packages out of the box now.

In previous post
I described how to wrap existing npm (especially React-related) packages into Meteor packages to use them in your application.

This way was quite hacky and was involving manual build modification, as well as forking existing libraries and committing build distributions in those forks.

I choose this way as there wasn’t a way to browserify packages on meteor application build step.

That really delighted me when I found that Eli Doran (https://github.com/elidoran) recently wrote custom build plugin
that finally enable us to include browserifyed React packages without writing those terrible wrappers!

From now I deprecate my libraries that I ported for Atmosphere package manager and recommend to those who still use wrapped packages move to Browserify with cosmos-browserify library help.

Below I’ll describe how I moved my project from wrapped atmosphere packages to browserifyed components with cosmos-browserify.

Update * Slowly things are getting better. Most of the issues noted in this article aren’t actual anymore.
Meteor community did a great job moving from Meteor packages to npm, from Blaze to React/Angular2/Vue,
from minimongo reactivity to Graphql. I won’t say all those custom Meteor infrastructure things were failures,
as at the time it was the best choice to obtain quick traction and user base.

Here I’ll share some thoughts about MeteorJS bad parts that I faced working with it.
It isn’t about starting holy war, but rather constructive criticism, and I really hope I’ll help Meteor community become better.

I really want to be wrong here. Please point in comments if I’m wrong, and return me my trust in framework and in community.

So there’s my main statement: MeteorJS is optimized for Hello World applications;
you can write serious application on top of it, but you have to hack it around to do so.

This article is an attempt to describe non-common in Meteor community approach of handling Blaze templates as isolated components.
There’s great blank space on this topic I found trying to implement it so code below would be result of my experiments and observations.
I use this approach in my current project.

Update 31 Marth @Ben’s Comment to this article proposed a nice @meteorhacks library Flow-components
that does thing by same principles I described here.