📑

フロントエンドのトレンドについて調べてみた

2023/11/10に公開

はじめに

2023年11月現在のフロントエンドのトレンド調査のため、State of JavaScript の情報を参考に調査を行った。

回答者の国別分布を上位5位までを見ると米国が11.9%、ドイツが5.2%、フランスが3.7%、イギリス(UK)が3.6%、そしてインドが3.2%。

言語別の回答者は、英語が69.6%、フランス語が3.4%、ドイツ語が3.1%、スペイン語が3%などとなっており、日本語での回答者は0.4%でした。

世界中の JavaScript 技術者へのアンケートを集計したものであるため、世界的なトレンドを把握するには有益なデータであることは間違いない。
そのため、こちらのサイトのデータを参考に調査を行うことを判断をした。
ただし、日本の回答率は少ないため日本のトレンドとズレが生じる可能性はある。

また、2022年のデータを参考にする関係で比較的最近に登場したものは調査対象外とした。

参考資料
https://www.gaji.jp/blog/2023/01/30/14069/#:~:text=The State of JS 2022 は、毎年世界のWEB,見ることができます。
https://qiita.com/mkin/items/0b5963ae1d995646fe34
https://codezine.jp/article/detail/17177
https://www.publickey1.jp/blog/23/state_of_javascript_20221reactnextjsjest4.html

判断基準

https://2022.stateofjs.com/ja-JP/libraries/

横軸が 否定的/肯定的な意見、縦軸が 使ったことがある/ない を表しているため、なるべく以下の状態であるライブラリを採用するかたちが望ましいと考えた。

  • 右上にある
  • 人気がある (グラフが緑色)
  • 否定的な意見が少ないまたは増えていない

調査内容

以下の4項目のデータに対して、判断基準をもとに調査を行った。

  • フロントエンドフレームワーク
  • レンダリングフレームワーク
  • テスト
  • ビルドツール

また、各項目のランキングの満足度のグラフを 肯定的な意見 (満足度が高ければ肯定的な意見の人が多い)、利用率のグラフを 使ったことがある (利用率が多ければ使ったことがある人が多い)と仮定した。

フロントエンドフレームワーク

https://2022.stateofjs.com/ja-JP/libraries/front-end-frameworks/

満足度で見るとTOP5は以下の通り。

  1. Solid
  2. Svelte (スベルト)
  3. Qwik
  4. React
  5. Vue.js

利用率で見るとTOP5は以下の通り。

  1. React
  2. Angular
  3. Vue.js
  4. Svelte
  5. Preact

上記で上がったライブラリの状態を見ていく。

Solid

右下に存在する。右肩上がりではあるもののこれからといったところ。

Svelte

右下に存在する。少しずつ右肩上がりだがまだまだこれからといったところ。

Qwik

グラフには見つけられなかった。

React

右上に存在する。2019年頃から少し否定的な意見が増加したようだが、2021年頃に回復して使ったことがある人も増加してきている。

Vue.js

右下に存在する。2020年頃までは好調だったようだがそれ以降は否定的な意見が増加し、使ったことがある人も減少している。

Angular

左下に存在する。減ってきてはいるものの使ったことがある人は多い。

右上に存在するのは React のみだった。次に一番右上に近い存在は Vue.js という結果だった。
React と Vue.js の2強とみてよさそうである。

https://npmtrends.com/react-vs-vue

2023年の状況を把握するため、React と Vue.js のnpm トレンドでダウンロード数を見てみる。
2023年10月1日時点で、React が約2,100万、Vue.js が約380万で React が圧倒的なダウンロード数であり、今現在でも人気が高いフレームワークということがわかった。

ただ、React は1年以上アップデートされていないというのが気になった。

GitHub スター数

スター数だと Vue.js がやや多いといった結果だった。
※ Vue.js は Vue2, 3 の合計

順位 名前 スター数 URL
1 React 215k https://github.com/facebook/react
2 Vue.js 2 206k https://github.com/vuejs/vue
3 Vue.js 3 41.2k https://github.com/vuejs/core

レンダリングフレームワーク

https://2022.stateofjs.com/ja-JP/libraries/rendering-frameworks/

満足度で見るとTOP5は以下の通り。

  1. Astro
  2. SvelteKit
  3. Next.js
  4. Docusaurus (ドキュザウルス)
  5. Remix

利用率で見るとTOP5は以下の通り。

  1. Next.js
  2. Gatsby
  3. Nuxt
  4. SvelteKit
  5. Astro

上記で上がったライブラリの状態を見ていく。

Astro

右下に存在する。右肩上がりではあるもののまだまだこれからといったところ。

SvelteKit

右下に存在する。右肩上がりではあるもののまだまだこれからといったところ。

Next.js

右下に存在する。あと少しで右上に届きそう。否定的な意見も増加せずに、使ったことがある人が順調に増加している。

Docusaurus

ドキュメント特化のフレームワークだと思うので対象外とした。

Remix

右下に存在する。否定的な意見が増加して、使ったことがある人があまり増加していない。

Gatsby

左下に存在する。かなり否定的な意見が増加して使ったことがある人も伸びていない。

Nuxt

右下に存在する。少し否定的な意見が増加して、使ったことがある人は減少している。

右上に存在するライブラリはなし。一番右上に近い存在は Next.js という結果だった。
Next.js の1強とみてよさそうである。

https://npmtrends.com/next-vs-nuxt

2023年の状況を把握するため、Next.js のnpm トレンドでダウンロード数を見てみる。
Nuxt を比較対象とした。
2023年10月1日時点で、Next.js が約490万、Nuxt が約52万で Next.js が圧倒的なダウンロード数であり、今現在でも人気が高いフレームワークということがわかった。

頻繁にアップデートされている。

GitHub スター数

スター数は Next.js が圧倒的に多いといった結果だった。

順位 名前 スター数 URL
1 Next.js 114k https://github.com/vercel/next.js
2 Nuxt 48.3k https://github.com/nuxt/nuxt

テスト

https://2022.stateofjs.com/ja-JP/libraries/testing/

満足度で見るとTOP5は以下の通り。

  1. Vitest (ヴィーテスト)
  2. Testing Library
  3. Playwright
  4. Jest
  5. Storybook

利用率で見るとTOP5は以下の通り。

  1. Jest
  2. Storybook
  3. Mocha
  4. Cypress
  5. Testing Library

上記で上がったライブラリの状態を見ていく。

Vitest

右下に存在する。右肩上がりではあるもののまだまだこれからといったところ。

Testing Library

右下に存在する。2021年以降否定的な意見が増加して、使ったことがある人は伸びていない。

Playwright

右下に存在する。右肩上がりではあるもののまだまだこれからといったところ。

Jest

右上に存在する。2021年以降に少しずつ否定的な意見が増加して、使ったことがある人は少し現象した。

Storybook

右下に存在する。2021年にあと少しで右上に届きではあったが、それ以降に否定的な意見が増加して、使ったことがある人は現象している。

Mocha

右下に存在する。人気低下中。2019年頃からどんどん人気低下中。

Cypress

右下に存在する。2021年から否定的な意見が増加して、使ったことがある人は増加していない。

右上に存在する Jest のみ。一番右上に近い存在は Storybook と Cypress という結果だった。
Jest の1強とみてよさそうである。

https://npmtrends.com/cypress-vs-jest-vs-storybook

2023年の状況を把握するため、Jest のnpm トレンドでダウンロード数を見てみる。
Storybook と Cypress を比較対象とした。
2023年10月1日時点で、Jest が約2,100万、Cypress が約510万、Storybook が約230万で Jest が圧倒的なダウンロード数であり、今現在でも人気が高いフレームワークということがわかった。

頻繁にアップデートされている。

GitHub スター数

npm trends の結果と逆転した。
スター数は Storybook が一番多いといった結果だった。

順位 名前 スター数 URL
1 Storybook 80.8k https://github.com/storybookjs/storybook
2 Cypress 45.2k https://github.com/cypress-io/cypress
3 Jest 42.9k https://github.com/jestjs/jest

ビルドツール

https://2022.stateofjs.com/ja-JP/libraries/build-tools/

満足度で見るとTOP5は以下の通り。

  1. Vite
  2. esbuild
  3. SWC
  4. tsc CLI
  5. Turbopack

利用率で見るとTOP5は以下の通り。

  1. webpack
  2. Gulp
  3. Vite
  4. tsc CLI
  5. Rollup

上記で上がったライブラリの状態を見ていく。

Vite

右下に存在する。あと少しで右上に届きそう。否定的な意見も増加せずに、使ったことがある人が順調に増加している。

esbuild

右下に存在する。2021年以降否定的な意見が増加して、使ったことがある人はあまり増加していない。

SWC

右下に存在する。2021年以降使ったことがある人が伸び悩んでいる。

tsc CLI

右下に存在する。人気低下中。2021年から一気に人気を落とした。

Turbopack

グラフには見つけられなかった。

webpack

右上に存在する。2020年から否定的な意見が大幅に増加して、使ったことがある人は増加していない。

Gulp

左下に行きそうなあたりに存在する。人気低下中。

Rollup

右下に存在する。2021年以降否定的な意見が増加して、使ったことがある人は増加していない。

右上に存在するのは webpack のみ。次いで一番右上に使い存在が Vite という結果だった。
webpack と Vite の2強とみてよさそう。

https://npmtrends.com/vite-vs-webpack

2023年の状況を把握するため、webpack と Vite のnpm トレンドでダウンロード数を見てみる。
2023年10月1日時点で、webpack が約2,400万、Vite が約760万で webpack が圧倒的なダウンロード数であり、今現在でも人気が高いフレームワークということがわかった。

頻繁にアップデートされている。

GitHub スター数

スター数は webpack と Vite とも同じくらいという結果だった。

順位 名前 スター数 URL
1 webpack 63.6k https://github.com/webpack/webpack
2 Vite 60.9k https://github.com/vitejs/vite

まとめ

はじめに定義した判断基準で定義した通りにライブラリを選定するのであれば、各ライブラリの選定は以下のようになる。

対象 候補
フロントエンドフレームワーク React
レンダリングフレームワーク Next.js
テスト Jest
ビルドツール webpack

ここに State of JavaScript のランク付け考慮すると。
フロントエンドフレームワークと レンダリングフレームワークについては変わらず。


テストは Jest or Cypress or Storybook のどれを使っても良さそう。

ビルドツールは Vite となる。

State of JavaScript のランク付け考慮後は以下の通り。

対象 候補
フロントエンドフレームワーク React
レンダリングフレームワーク Next.js
テスト Jest or Cypress or Storybook
ビルドツール Vite

Discussion