Category Archives: Meteor

Javascript: Links, News And Resources (8)

Previous Post
Next Post

Vanilla JavaScript

WABT: The WebAssembly Binary Toolkit

WebAssembly Text Format

WebAssembly Binary Format

V8 Wasm Opcodes

WebAssembly 101: Bringing Bytecode to the Web

Explaining React License

Reify: Meteor’s evolving JavaScript module compiler

Stay tuned!

Angel “Java” Lopez


New Month’s Resolutions: July 2015

A new month begins, and it’s time to write my new resolutions and review the previous ones:

– Give a talk about Meteor [complete] see presentation
– Write posts about JavaScript and Artificial Intelligence [pending]
– Improve ClojJS [pending]
– Add NPM support to ClojJS [pending]
– Continue work on SparkSharp [pending]
– Start Message project in C#, a la Apache Camel [complete] see repo 
– Improve Liqueed Project, kudos features [pending]
– Improve Templie, template engine in Java [pending]
– Improve BScript, Basic-like interpreter in C#[pending]
– Continue work on OStore [complete] see repo
– Continue work on SharpMongo [complete] see repo

Additionally, I worked on:

– Started ObjectChannel, object serialization in C# [complete] see repo
– Started Elixir samples [complete] see repo
– Give a talk about Machine Learning [complete] see presentation
– Started Elixir samples [complete] see repo
– Started NRiak, key-value store in JavaScript/NodeJS [complete] see repo

– Started Android samples [complete] see repo

This new month’s resolutions:

– Continue work on SparkSharp
– Continue work on BScript
– Continue work on DynApp
– Give a talk about TDD
– Continue work on SharpMongo
– Continue work on NRiak
– Continue work on Elixir samples
– Continue work on Android samples

Stay tuned!

Angel “Java” Lopez

Meteor: Links And Resources (2)

Previous Post


Meteor – YouTube

An Introduction to Meteor | Stephen Walther



javascript – Questions Meteor about changing view and putting array in collection – Stack Overflow

Run Meteor Apps Anywhere with Demeteorizer

Hosting a Meteor App on Nodejitsu | Proper

Setting Up Tests w/ Meteor | Proper

Simple Routing in Meteor | Proper


javascript – How do I create multi-page applications with Meteor? – Stack Overflow

Advanced Routing in Meteor: Navigation State w/ Handlebars Helpers and Route Functions | Proper

meteor – How to install atmosphere packages without meteorite? – Stack Overflow

python – How do I access Meteor’s mongodb from another client, while meteor is running? – Stack Overflow

My Links

Stay tuned!

Angel “Java” Lopez

Programming Meteor (1) First steps

Yesterday, I attended to Meteor meetup at Buenos Aires, a half day of talks and coding. Thanks to organizers, sponsors and supporters: @areatreslab, @4residents, @bikestorming, @html5cat (he co-wrote a function analysis paper), @matikalwill (a.k.a. “my life is bikestorming, ‘senio’”).

Meteor is a framework to build web applications. And it can be used to build mobile applications, too. A meteor application, in general, is a single page application (SPA). The server is based on Node.js. But Meteor is not like another Node.js applications. Visit:

The main difference: the programming language is JavaScript, AND CAN BE EXECUTED at server side or at client side. Yes, the same code. Or you can write code specifically created for client OR server side.

Meteor is based on seven principles:

  • Data on the Wire. Don’t send HTML over the network. Send data and let the client decide how to render it.
  • One Language. Write both the client and the server parts of your interface in JavaScript.
  • Database Everywhere. Use the same transparent API to access your database from the client or the server.
  • Latency Compensation. On the client, use prefetching and model simulation to make it look like you have a zero-latency connection to the database.
  • Full Stack Reactivity. Make realtime the default. All layers, from database to template, should make an event-driven interface available.
  • Embrace the Ecosystem. Meteor is open source and integrates, rather than replaces, existing open source tools and frameworks.
  • Simplicity Equals Productivity. The best way to make something seem simple is to have it actually be simple. Accomplish this through clean, classically beautiful APIs.

Notable, database state is shared by all clients at realtime. If your current view is a list of customer, and somebody adds a new customer to the MongoDB database (the supported database) all the clients are notified, and each view involving customers are automatically refreshed. All this without adding special code, simply using the code that lists customers in a page (using Handlebar as the template engine).

Although based on Node.js, Meteor is not an NPM package. It should be installed manually, read:

It can installed in Linux/Unix and Mac boxes. Supported platforms at:

But if you have Windows (I used Windows in the meetup) you should use another approach:

There are Vagrant –based solutions, too. I installed using the LaunchMeteor.exe without problems, in two Windows machines.

I read:

A Meteor application is a mix of JavaScript that runs inside a client web browser, JavaScript that runs on the Meteor server inside a Node.js container, and all the supporting HTML fragments, CSS rules, and static assets. Meteor automates the packaging and transmission of these different components. And, it is quite flexible about how you choose to structure those components in your file tree.

The only server assets are JavaScript and files in the private subdirectory. Meteor gathers all your JavaScript files, excluding anything under the client, public, and private subdirectories, and loads them into a Node.js server instance inside a fiber. In Meteor, your server code runs in a single thread per request, not in the asynchronous callback style typical of Node. We find the linear execution model a better fit for the typical server code in a Meteor application.

My emphasis. This is a sensitive issue: I’m not sure about the implications of such run strategy. Check my links,scalability

Meteor has an unofficial package manager, called Meteorite:

and “smart packages”

I read:

In addition to the packages in the official Meteor release being used by your app, meteor list and meteor add also search the packages directory at the top of your app. If you’ve downloaded an unofficial package from Atmosphere you should unpack it into that directory (the unofficial Meteorite tool streamlines this process). You can also use the packages directory to break your app into subpackages for your convenience — if you are willing to brave the fact that the Meteor package format is not documented yet and will change significantly before Meteor 1.0…

Meteorite is not running on Windows, so you should use only the builtin packages or use a manual install.

There are many resources to learn Meteor:

For example, there are easy ready to use examples:

During yesterday meetup, I tried some examples, modify and simplify the leaderboard example, add a Bootstrap 2.x top bar, and started to write a new one using many pages and MongoBD (using Backbone routing):

Many links with tutorials, videos, examples at:

The CRUD sample (work in progress) at:

It uses only builtin packages so you can run it as is from Windows.

Yesterday, I published some Meteor-related links. More links at:,tutorial

Ah! Meteor can run in PhoneGap, to have a multi-device mobile experience:,phonegap

My plan: after finishing the mycompany sample, use the base code to generate an AjGenesis module for Node.js. So, I will have code generation of web sites, using a free defined model, tasks and templates. Then, add phonegap support, and maybe, software as a service, using Node.js access to PhoneGap Build API.

More fun is coming.

Keep tuned!

Angel “Java” Lopez

Meteor: Links and Resources (1)

Next Post

Today I’m going to Meteor Meetup at Buenos Aires. Some links I collected about this framework.

meteor is now on npm by substack · Pull Request #516 · meteor/meteor

(362) Node.js: Why does Meteor use its own package system rather than NPM? – Quora

meteor-npm requirements cannot be found (rimraf, mkdirp) · Issue #12 · arunoda/meteor-npm

Complete NPM integration for Meteor | MeteorHacks

javascript – it possible use a nodejs package inside meteor app? – Stack Overflow

How Meteor Uses NodeJS | MeteorHacks

Aprendiendo MeteorJs

aplicaciones en tiempo real con meteor by edsadr

Atmosphere | Beer. Wings. Smart Packages.

Structuring your app

The Meteor blog – Introducing DDP

MVC framework making it easy to write realtime, collaborative applications that run in both Node.js and browsers.

Why Meteor will kill Ruby on Rails | Differential

ArunRocks – Real-time Applications and will Django adapt to it?

David Glasser: Making Mongo realtime – oplog tailing in Meteor — Devshop 10 Tech Talk – YouTube

Isomorphic JavaScript: The Future of Web Apps – Airbnb Engineering


Best Learning Resources for Meteor.js • yet another useless homepage

Building An App In 45 Minutes With Meteor | Smashing Magazine

Telescope, an open-source social news app built with Meteor

6 months with Meteor: Why the future of the web is real-time – The Changelog

Meteor Authentication

Overview of Derby.js and Meteor.js (for 7/10 NoVa Node.js Meetup)

Meteor License

First chunk of Meteor auth now in GitHub – Google Groups!topic/meteor-core/g4Bsm3yFTe4



My Links

Keep tuned!

Angel “Java” Lopez