38TsTypeScript29BbBabel17FwFlow14CsCoffeeScript7CjClojureScript6ReReason5PsPurescript113VVue.js110RReact40NgAngular27BbBackbone19PrPreact19EmEmber15HaHyperapp12InInferno43RdRedux16MxMobX15FxFlux11RyRelay8ApApollo43WpWebpack30GuGulp26PcParcel13RuRollup43Sksocket.io40MeMeteor40ExExpress28NxNext.js25GGatsby22KoKoa19SaSails11LbLoopback9HaHapi9FeFeathers6VnVulcan37PpPuppeteer34Jsjson-server34NwNW.js27SbStorybook20JeJest16MoMocha16NmNightmare15EzEnzyme14AvAVA13JaJasmine10KaKarma7CyCypress68RnReact Native64EElectron35IoIonic14NsNativeScript10WeWeex78DD349JqjQuery47AxAxios44ThThree.js39ChChart.js38MtMoment34LoLodash29EcEcharts27PtPrettier24ImImmutable23UnUnderscore23Ananime.js22MdModernizr13RaRamda127BsBootstrap42SuSemanticUI40MuMaterial UI33AnAnt Design30EtElement27FdFoundation25GGatsby23HxHexo8VpVuePress6MsMetalsmith5RsReact Static38TsTypeScript29BbBabel17FwFlow14CsCoffeeScript7CjClojureScript6ReReason5PsPurescript113VVue.js110RReact40NgAngular27BbBackbone19PrPreact19EmEmber15HaHyperapp12InInferno43RdRedux16MxMobX15FxFlux11RyRelay8ApApollo43WpWebpack30GuGulp26PcParcel13RuRollup43Sksocket.io40MeMeteor40ExExpress28NxNext.js25GGatsby22KoKoa19SaSails11LbLoopback9HaHapi9FeFeathers6VnVulcan37PpPuppeteer34Jsjson-server34NwNW.js27SbStorybook20JeJest16MoMocha16NmNightmare15EzEnzyme14AvAVA13JaJasmine10KaKarma7CyCypress68RnReact Native64EElectron35IoIonic14NsNativeScript10WeWeex78DD349JqjQuery47AxAxios44ThThree.js39ChChart.js38MtMoment34LoLodash29EcEcharts27PtPrettier24ImImmutable23UnUnderscore23Ananime.js22MdModernizr13RaRamda127BsBootstrap42SuSemanticUI40MuMaterial UI33AnAnt Design30EtElement27FdFoundation25GGatsby23HxHexo8VpVuePress6MsMetalsmith5RsReact Static38TsTypeScript29BbBabel17FwFlow14CsCoffeeScript7CjClojureScript6ReReason5PsPurescript113VVue.js110RReact40NgAngular27BbBackbone19PrPreact19EmEmber15HaHyperapp12InInferno43RdRedux16MxMobX15FxFlux11RyRelay8ApApollo43WpWebpack30GuGulp26PcParcel13RuRollup43Sksocket.io40MeMeteor40ExExpress28NxNext.js25GGatsby22KoKoa19SaSails11LbLoopback9HaHapi9FeFeathers6VnVulcan37PpPuppeteer34Jsjson-server34NwNW.js27SbStorybook20JeJest16MoMocha16NmNightmare15EzEnzyme14AvAVA13JaJasmine10KaKarma7CyCypress68RnReact Native64EElectron35IoIonic14NsNativeScript10WeWeex78DD349JqjQuery47AxAxios44ThThree.js39ChChart.js38MtMoment34LoLodash29EcEcharts27PtPrettier24ImImmutable23UnUnderscore23Ananime.js22MdModernizr13RaRamda127BsBootstrap42SuSemanticUI40MuMaterial UI33AnAnt Design30EtElement27FdFoundation25GGatsby23HxHexo8VpVuePress6MsMetalsmith5RsReact Static

The State Of JavaScript

The JavaScript world could use a bit of classification.

In 2017 this survey helped us do just that, by collecting data from over 20,000 developers to identify current and upcoming trends.

This year, we're asking for your help once more to find out which libraries developers want to learn next, which have the best satisfaction ratings, and much more.

Take Survey

Note: to improve results relevance, we keep track of data such as your referrer, location, device, browser, and OS.

Previous Years:

Help Spread the Word!

StateOfJS is Made by:

Raphaël Benitte

Creator of the Nivo JavaScript data visualization library as well as Mozaik, a tool for building beautiful dashboards.

Sacha Greif

Author of Discover Meteor and creator of VulcanJS, a React+GraphQL open-source framework.

Michael Rambeau

Creator of Best of JavaScript, a platform that provides insights and resources about JavaScript libraries.