Introducing io.js VS Node.js – Press Start

Change is happening in the Node landscape.
A group of rebels forked the main Node project, tired to wait for new versions and ES6 features. Their goal is to provide a npm compatible framework that always runs over the latest V8 version. The underlying goal is to profit from ES6 features that are being implemented in V8.

Today, Clever Cloud gives you the possiblity to run your io.js app in the cloud.

PRESS START

A soundtrack is available for this post, in order to cope with its visual artwork:

Here comes the rain again

It is inevitable. Agent Smith, Matrix Reloaded (2003)

Open Source generates diversity. Node.js fork io.js hits its version 1.0 (1.0.4 now). After a slight clash with Joyent last year, one of the Node.js developers, Fedor Indutny, decided to go on his own to maintain a new version of Node.js.
As mentionned above, the goal it to support the features of version 6 of the ECMA-262 specification [PDF], which implementation timeframe was judged too slow on Node.js.

Why is supporting io.js great?

While it is great to have a production-ready environment, addressing stability and security concerns, we are still nerds. We love to use cutting edge technology. The io.js framewok just released version 1.0.4. This is not a stable version. It is just a version different enough from the node.js project that io people just felt they needed to express it in the version number.

Is io going to replace Node.js on Clever Cloud?

No. We will go on supporting Node.js and io together. For now, the default is the latest Node.js version. In the future, the standard for server-side javascript might be io, or Node.js, or another framework that does not exist yet. It is still a young ecosystem.
Even if the entire community switches to another Node.js fork, we will still support Node.js for compatibility reasons.

How do I use io.js on Clever Cloud?

It's fairly simple: as you specified the Node.js version in package.json, you just prefix the version with io.js:

{
  "engines": {
    "node": "iojs-v1.0.3"
  }
}

And that's it! The "node" executable will be the one provided by io.js.

What can I do with io.js?

First, you can do everything you could do with Node.js. In addition to that, io.js is mostly about new features. Check the "ES6 support" page: https://iojs.org/es6.html.
You can use Map instead of Object, you have out-of-the box Promises/A+, you can (and will) use the "let" keyword…

Try it now on Clever Cloud!

Credits & Thanks to nervewax for its great background image used for this post.

Blog

À lire également

Clever Cloud structures itself to support its organic growth

In 2023, Clever Cloud has once again made great strides, with a significant increase in its turnover. Having recently passed the 60-strong mark, the company is welcoming new profiles to support its development, and is expanding its Management Committee.
Company Press

Clever Cloud and CISPE: a strategic commitment to the European Cloud

Continuing its commitment to digital sovereignty, Clever Cloud is proud to announce its participation in CISPE (Cloud Infrastructure Services Providers in Europe association).
Company

Clever Cloud opens a new Gravelines HDS region

Clever Cloud opens a new Gravelines Health data Hosting region to have redundancy on those sensitive datas.
Company