Tutorial by Examples: n

The METEOR_SETTINGS environment variable can accept JSON objects, and will expose that object in the Meteor.settings object. First, add a settings.json to your app root with some configuration info. { "public":{ "ga":{ "account":"UA-XXXXXXX-1" ...
Environment variables are also available to the server via the process.env object. if (Meteor.isServer) { Meteor.startup(function () { // detect environment by getting the root url of the application console.log(JSON.stringify(process.env.ROOT_URL)); // or by getting the port ...
To detect the environment on the server, we have to create a helper method on the server, as the server will determine which environment it is in, and then call the helper method from the client. Basically, we just relay the environment info from the server to the client. //------------------------...
As of Meteor 1.3, Meteor now exposes the NODE_ENV variable on the client by default. if (Meteor.isClient) { Meteor.startup(function () { if(process.env.NODE_ENV === "testing"){ console.log("In testing..."); } if(process.env.NODE_ENV === "production&...
Andrew Mao's solution. Average Aggregation Queries in Meteor Meteor.publish("someAggregation", function (args) { var sub = this; // This works for Meteor 0.6.5 var db = MongoInternals.defaultRemoteCollectionDriver().mongo.db; // Your arguments to Mongo's aggregation...
Development usually begins with an editor or an Integrated Development Environment. The following IDEs are known to support Meteor to some extent: Atom - Javascript IDE that can fully leverage Meteor's isomorphic javascript framework. If you want to be able to hack on your editor itself, this i...
Developing Meteor apps usually means developing multi-client reactivity, which requires collaboration tools. The following tools have proven to be popular within the Meteor community. Google Hangouts - Video conferencing and chat. Zenhub.io - Kanban boards for GitHub. InVision - Collaborative ...
If you want to integrate Meteor with an external API, it's likely that it's going to exposed as a REST interface. We tend to use the following Chrome apps for testing REST APIs. Postman DHC Rest Client Online tools: Hurl.it RequestBin
A release manifest is similar to an NPM package.json file, in that it's primary concern is specify a list of Atmosphere packages, and providing a bit of metadata about that list of packages. The basic format looks like this: { "track":"distroname:METEOR", "version&qu...
If you need to extend the meteor tool or the command line, you'll need to create and publish your own meteor-tool package. Ronen's documentation is the best out there for this process: http://practicalmeteor.com/using-meteor-publish-release-to-extend-the-meteor-command-line-tool/1 It's easy to get...
StarryNight contains a small utility that parses an application's .meteor/versions file, and converts it into a Release Manifest. npm install -g starrynight cd myapp starrynight generate-release-json If you don't wish to use StarryNight, simply copy the contents of your .meteor/versions file i...
meteor publish-release --from-checkout
When building a custom release track, it's common to keep packages in the /packages directory as git submodules. The following command allows you to fetch all of the latest commits for the submodules in your /packages directory at the same time. git submodule foreach git pull origin master
Logcat is a command-line tool that dumps a log of system messages, including stack traces when the device throws an error and messages that you have written from your app with the Log class. The Logcat output can be displayed within Android Studio's Android Monitor or with adb command line. In And...
The following example creates a Bootstrap Drop-Down menu, using only Blaze and no JQuery. Document Object Model <nav class="nav navbar-nav"> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="drop...
A very common task is to create responsive navbars and to create action/footer bars that have different controls based on what page a user is on, or what role a user belongs to. Lets go over how to make these controls. Router Router.configure({ layoutTemplate: 'appLayout', }); Router.route('c...
The Database Layer First, we want to set up the Data Distribution Protocol, to make sure that we can persist data to the database, and get it to the client. Three files need to be created... one on the server, one on the client, and one shared between both. // client/subscriptions.js Meteor.subsc...
Alerts and errors are nearly the simplest of all Meteor component patterns. They're so simple, in fact, that they barely register as a pattern in of themselves. Instead of adding FlashAlert modules or patterns, all you really need to do is style a Handlebar template appropriate, add a helper, and wi...
Dynamic Proxies do not really have much to do with Reflection but they are part of the API. It's basically a way to create a dynamic implementation of an interface. This could be helpful when creating mockup services. A Dynamic Proxy is an instance of an interface that is created with a so-called in...

Page 462 of 1088