How does Meteor manage scope

Recently I have been making a framework for both browser and Node.js. I couldn’t find the best structure for both environment, so I went reading other frameworks, such as Meteor.

The build process of Meteor is something like this:

Files in app are handled like this:

Files in packages are handled like this:

It seems to me that Meteor is having a really big dream, it wants to change things from ground up, but JavaScript is not quite ready for that. The scoping mechanism is just a dirty workaround, just a trick on syntax quirks. There are ways you can declare a global variable in JS, they work the same, except one of them behaves differently only in Meteor.

Here is how it looks like: