What’s in a Name?
To form a list of technologies to look at, I searched GitHub for those libraries with the highest number of stars. I added any libraries that I am aware of that were not included, that might nonetheless be compelling in one way or another. “Technologies” include frameworks, libraries, languages (like ES6 and TypeScript), task runners, testing libs, UI libs, and anything else in our JS world.
The RSIJT formula factors in discussions on Stack Overflow, and job postings on Dice. It weighs two types of job postings – those which contain the technology in its title are given more weight, and those which contain the technology in its description are given a lesser weight.
To make the list relevant, the ratings are computed based on the last month’s worth of data.
The technologies included in this analysis include:
AMD, angular2, angularJS, babel, backbone, bootstrap, bower, chart.js, coffeescript, common.js, d3, ember.js, es6, express.js, flux, foundation, grunt, gulp, handlebars, impress.js, jasmine, jquery, karma, leaflet, less, lodash, meteor, mocha, modernizr, moment.js, mustache, node, polymer, react-native, React.js, redux, require.js, reveal.js, sails, sass, semanticUI, socket.io, three.js, typescript, underscore, vue.js, web components
Following are the top 10 JS technologies in March 2017, using the RSIJT formula:
No surprises here. Angular and React are by far and away the most popular front end frameworks. Ember just missed the cut and I expect vue.js to climb the list over the coming months.
Also mixed in are what I consider legacy JS tech (in the JS world, legacy means it’s old tech after just 5 years!). Libraries like jQuery, Bootstrap, and Backbone are on this list, not because they are the latest and greatest, but because they are used in so many existing apps.
Node.js and Express continue to be very popular technologies on the server side.
As a bonus, I have decided to include the next 10 technologies with their RSIJT score.
Over time I will be revising the list and formula. If you have any suggestions on how to make this more accurate or useful, or if you know of other JS tech that should be included in the analysis, please drop me a line!