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 Tools: a year of enhancements for your deployments, on the road to v4

A command line interface (CLI) is at the core of developer experience. At Clever Cloud, we have been providing Clever Tools for almost 10 years.
Engineering Features

Otoroshi with LLM: simplify your API and AI service management on Clever Cloud

Your applications and services are evolving in an increasingly complex environment, requiring effective management of APIs and interactions with artificial intelligence models such as the very popular LLMs (Large Language Models).
Features

Markitdown-as-a-Service: from AI to production on Clever Cloud

Every day, new tools are released, AI brings new perspectives, you have new ideas. It's one of Clever Cloud's missions to help you to develop and test them in real-life conditions, effortlessly, before making them available to everyone.
Engineering