What Do the Popular JavaScript Tools Depend On? -Telerik Developer Network

Cody Lindley explores the dependencies of popular JavaScript tools and frameworks including Angular, React, jQuery, Aurelia and more.

See what famous JS libraries like Angular and React use as their dependencies.

Source: What Do the Popular JavaScript Tools Depend On? -Telerik Developer Network

Node.js v4.0.0 is here!

So we lived to see it. Node.js version 4 is here which means we have the latest V8, ES6 support and the latest security patches for our favorite tool! Well the previous statement cannot describe how much good things just happened. From the creation of Node.js, through the fork of IO.js, until finally the latest version and the merger happened and now the community has the word how Node.js will be shaped from now on.

I am personally very excited about that and I am currently going to test and update one of my Docker apps that installs and uses Node.js through NVM.

I am also expecting a lot of work on this major version and the patches and new features are coming sooner than later which makes it very interesting to use Node.js these days!

Enjoy!

Bootstrap 4 alpha · Bootstrap Blog

Official blog for the Bootstrap framework.

Source: Bootstrap 4 alpha · Bootstrap Blog

Wow. They’ve rewritten everything. They switched from Less to Sass, from ES5 to ES6 and even dropped IE8 support! So much things that can make me happy! I just need to calm down and prepare for the final release while in the mean time looking around for sites that already use v4.

Enable full ES6 support in Node.js – dynamic transpiling with Babel

Finally I’ve decided to go beyond Promises with Node.js and started to look how can I write easily ES6 code today in my apps. I’ve had the option to use io.js which has a good ES6 support by default, starting Node.js with the Harmony flag was also an option. However if I wanted as full as possible ES6 support I had to use Babel. There are 2 options here: static compiling and deploy or dynamic compiling when the application is ran. Babel uses cache so only the changed files are recompiled.

First I had to install babel through npm:

npm install babel --save

It is recommended to install babel globally but I wanted to have it in the local packages for easy CI testing.

Then I added this little piece of code on the top of the main app.js which is the file used when the application is started with `node app.js`:

require("babel/register");

One downside is that the main (app.js) file must contain only ES5 code if the Node.js version you are using is not supporting the new syntax. However you can just create one bootstrap.js that registers babel and includes the app.js which then can contain ES6 code(and vice versa: app.js as the main one including bootstrap.js).

I wanted to have the ES6 support in the tests too and because I use grunt, mocha and istanbul I’ve added this configuration to the Gruntfile.js:

mocha_istanbul: {
    src: 'test/server/',
    options: {
        ...
        mochaOptions: ['--compilers=js:babel/register']
    }
}

That way the tests are running with transpiled files and if I have an ES6 syntax there I am good.

I also had to add/change some configuration in .jshintrc which I use in the tests and in my IDE:

“esnext” : true, //this allows ES6 syntax
“predef”: [“-Promise”] //this allows me to use a Promise lib like bluebird instead the default ES6 implementation

I also changed the JavaScript engine in my IDE (Webstorm) from EcmaScript 5.1 to ES6 to make it happy with the new syntax.

After that I started adding some fat arrow functions and the app/tests are working. It’s interesting how the new features sometimes need more than a basic change. For example the fat arrow functions behave different with this and my code for mongoose static functions that was using return this.somefunc() needed to be changed.

If you use istanbul with the configuration above you may notice that the coverage data shows ES5 code with the source map encoded at the bottom of the pages. There’s an unstable branch on istanbul’s GitHub page about source maps which means that we’ll soon have the coverage in ES6 for free! I’ll also be waiting for the Node.js and io.js to be merged and see what works without transpilers.

You-Dont-Know-JS/es6 & beyond at master · getify/You-Dont-Know-JS

You-Dont-Know-JS – A book series on JavaScript. @YDKJS on twitter.

Source: You-Dont-Know-JS/es6 & beyond at master · getify/You-Dont-Know-JS

A book on ES6. Completely free, hosted on GitHub in a Markdown format which means you just click links and read long and smart chapters!

ES6 In Depth Articles ✩ Mozilla Hacks – the Web developer blog

Articles posted in ES6 In Depth

Source: ES6 In Depth Articles ✩ Mozilla Hacks – the Web developer blog

This is an on-going collection of articles that describes ES6 like they say it: in depth. I think it’s about time for us to start learning it. It’s a good reading coming from not just anybody but Mozilla.

You can follow the future articles by using blogtrottr.com with this rss feed.