51TsTypeScript33BbBabel19FwFlow15CsCoffeeScript8CjClojureScript7ReReason5PsPurescript143VVue.js132RReact49NgAngular27BbBackbone23PrPreact21EmEmber16HaHyperapp13InInferno49RdRedux19MxMobX16FxFlux13RyRelay11ApApollo49WpWebpack32PcParcel31GuGulp16RuRollup46Sksocket.io44ExExpress41MeMeteor39NxNext.js36GGatsby26KoKoa20SaSails12LbLoopback11HaHapi11FeFeathers7VnVulcan51PpPuppeteer41Jsjson-server39SbStorybook26JeJest18MoMocha17EzEnzyme17NmNightmare16AvAVA14JaJasmine13CyCypress10KaKarma79RnReact Native75EElectron38IoIonic35NwNW.js17NsNativeScript12WeWeex86DD362AxAxios53ThThree.js51JqjQuery44ChChart.js41MtMoment40LoLodash35EcEcharts32PtPrettier31Ananime.js27ImImmutable24UnUnderscore23MdModernizr19RxRxJS16RaRamda134BsBootstrap49AnAnt Design48MuMaterial UI45SuSemanticUI39EtElement28FdFoundation36GGatsby27HxHexo13VpVuePress7RsReact Static7MsMetalsmith51TsTypeScript33BbBabel19FwFlow15CsCoffeeScript8CjClojureScript7ReReason5PsPurescript143VVue.js132RReact49NgAngular27BbBackbone23PrPreact21EmEmber16HaHyperapp13InInferno49RdRedux19MxMobX16FxFlux13RyRelay11ApApollo49WpWebpack32PcParcel31GuGulp16RuRollup46Sksocket.io44ExExpress41MeMeteor39NxNext.js36GGatsby26KoKoa20SaSails12LbLoopback11HaHapi11FeFeathers7VnVulcan51PpPuppeteer41Jsjson-server39SbStorybook26JeJest18MoMocha17EzEnzyme17NmNightmare16AvAVA14JaJasmine13CyCypress10KaKarma79RnReact Native75EElectron38IoIonic35NwNW.js17NsNativeScript12WeWeex86DD362AxAxios53ThThree.js51JqjQuery44ChChart.js41MtMoment40LoLodash35EcEcharts32PtPrettier31Ananime.js27ImImmutable24UnUnderscore23MdModernizr19RxRxJS16RaRamda134BsBootstrap49AnAnt Design48MuMaterial UI45SuSemanticUI39EtElement28FdFoundation36GGatsby27HxHexo13VpVuePress7RsReact Static7MsMetalsmith51TsTypeScript33BbBabel19FwFlow15CsCoffeeScript8CjClojureScript7ReReason5PsPurescript143VVue.js132RReact49NgAngular27BbBackbone23PrPreact21EmEmber16HaHyperapp13InInferno49RdRedux19MxMobX16FxFlux13RyRelay11ApApollo49WpWebpack32PcParcel31GuGulp16RuRollup46Sksocket.io44ExExpress41MeMeteor39NxNext.js36GGatsby26KoKoa20SaSails12LbLoopback11HaHapi11FeFeathers7VnVulcan51PpPuppeteer41Jsjson-server39SbStorybook26JeJest18MoMocha17EzEnzyme17NmNightmare16AvAVA14JaJasmine13CyCypress10KaKarma79RnReact Native75EElectron38IoIonic35NwNW.js17NsNativeScript12WeWeex86DD362AxAxios53ThThree.js51JqjQuery44ChChart.js41MtMoment40LoLodash35EcEcharts32PtPrettier31Ananime.js27ImImmutable24UnUnderscore23MdModernizr19RxRxJS16RaRamda134BsBootstrap49AnAnt Design48MuMaterial UI45SuSemanticUI39EtElement28FdFoundation36GGatsby27HxHexo13VpVuePress7RsReact Static7MsMetalsmith

The State Of JavaScript

The JavaScript world could use a bit of classification.

In 2018 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.