JavaScript ベスト・オブ・ザ・イヤー 2020

5回目のJavaScript ライジングスターにようこそ!

このランキングのコンセプトは、昨年までと同じです。 すなわち、2020年の一年間でGitHubに追加されたスターの数を比較することで、どのプロジェクトが最も注目を集めたかを数字で確認します。


以下のチャートは、2019年の一年間にGitHubで増加したスターの数を比較したものです。Webプラットフォームに関するベストプロジェクトを集めたリストであるBest of JSを分析したものです。各プロジェクトをクリックすると、プロジェクトの詳細を閲覧することができます。

総合ランキング

1
Deno

Deno

A secure JavaScript and TypeScript runtime
+30.2k
2.8k
1.5k
1.0k
1.3k
13.7k
3.0k
1.3k
897
836
742
912
1.2k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Vue.js

Vue.js

A progressive, incrementally-adoptable framework for building UI on the web
+22.5k
1.4k
1.7k
2.3k
2.4k
1.9k
1.9k
2.0k
1.9k
2.1k
1.3k
1.3k
1.4k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
React

React

A declarative, efficient, and flexible JavaScript library for building user interfaces.
+19.8k
1.4k
1.4k
1.5k
1.7k
1.8k
1.6k
1.9k
1.8k
1.6k
1.5k
1.4k
1.6k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Playwright

Playwright

Node.js library to automate Chromium, Firefox and WebKit with a single API
+19.7k
7.0k
2.6k
840
747
1.5k
1.3k
847
634
789
680
469
1.8k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
VS Code

VS Code

Visual Studio Code
+19.1k
1.4k
1.3k
1.5k
1.7k
1.8k
1.5k
1.8k
1.7k
1.4k
1.4k
1.4k
1.7k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
6
esbuild

esbuild

An extremely fast JavaScript bundler and minifier
+16.6k
1.9k
819
749
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
7
Vue Element Admin

Vue Element Admin

A magical vue admin
+16.0k
1.1k
1.2k
1.7k
1.8k
1.6k
1.4k
1.3k
1.1k
1.1k
880
1.1k
1.1k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
8
eDEX-UI

eDEX-UI

A cross-platform, customizable science fiction terminal emulator with advanced monitoring & touchscreen support.
+15.7k
129
148
127
189
163
142
2.3k
209
973
2.5k
4.5k
3.8k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
9
Next.js

Next.js

The React Framework
+15.5k
937
823
965
1.1k
1.4k
1.2k
1.3k
1.1k
1.1k
1.8k
1.9k
1.3k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
10
Tailwind CSS

Tailwind CSS

A utility-first CSS framework for rapid UI development.
+15.5k
968
1.1k
885
1.1k
1.2k
1.1k
1.0k
1.2k
923
1.2k
2.6k
1.6k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

2020年は様々な理由で特別な年になりました。 最も目を引くことは、これまで5年間首位を独走してきたVue.jsを抜き去り、Denoが一位になったことです。

DenoはNode.jsの生みの親Ryan Dahlによる新たなJavaScriptランタイムです。 Node.jsのこれまでの10年間の経験と反省を生かし、多くを改善しているため、Node.jsの後継と思われがちです。

主な機能としては、

  • デフォルトでTypeScript対応。ただしJavaScriptでコードを書くこともできる。
  • 一極集中したパッケージマネージャがなく、任意の依存関係を任意のURLから読み込むことができる。
  • Deno標準ライブラリは、Node.jsでは個別にパッケージをインストールしなければならなかったような一般的な用途のライブラリを最初から提供する。
  • Denoは可能なかぎりWeb標準に従っている。(例:Fetch API)
  • インポートはES Modulesを使用。
  • テストランナーやデバッガーを標準装備。

Denoのエコシステムはまだまだ発展途上ですが、Denoの話題性を考えると、今後大きく変化することが期待されます。

Denoの成長は、2つの大きなトレンドを裏付けています。

  • フロントエンドとクライアントサイドでのTypeScriptの台頭
  • Snowpackなどのソリューションによってオンザフライで提供されるES Modulesの成長。

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

1
Vue.js

Vue.js

A progressive, incrementally-adoptable framework for building UI on the web
+22.5k
1.4k
1.7k
2.3k
2.4k
1.9k
1.9k
2.0k
1.9k
2.1k
1.3k
1.3k
1.4k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
React

React

A declarative, efficient, and flexible JavaScript library for building user interfaces.
+19.8k
1.4k
1.4k
1.5k
1.7k
1.8k
1.6k
1.9k
1.8k
1.6k
1.5k
1.4k
1.6k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Angular

Angular

One framework. Mobile & desktop.
+13.3k
1.1k
1.3k
1.0k
1.0k
1.1k
1.1k
997
1.6k
937
748
1.1k
890
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Svelte

Svelte

Cybernetically enhanced web apps
+12.0k
1.2k
1.0k
996
1.1k
985
805
886
660
742
1.6k
843
841
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Alpine.js

Alpine.js

A rugged, minimal framework for composing JavaScript behavior in your markup.
+11.5k
1.6k
1.5k
1.4k
1.0k
1.4k
895
583
530
550
512
492
632
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

いつものようにVue.jsReactが頂上決戦を繰り広げています。

その後ろでは、2019年に3番手をSvelteに奪われたAngularが、ふたたびその位置を奪還しました。

ベスト5の新顔はAlpine.jsで、これはLaravel LiveWireの作者によって作られたミニマルなリアクティブフレームワークです。

Vue.jsとAngularの両方から、カスタムHTMLディレクティブや双方向バインディングといったアイデアを拝借しています。

HTMLに古き良き<script>タグを追加するだけで簡単に使うことができ、ビルドプロセスも不要で、HTMLマークアップだけで全てを動かすことができます。 本格的なフレームワークを導入することが困難な既存のWebページをさくっと強化する目的については、最も適切なソリューションであるかもしれません。

Webページにインタラクティブ性をもたらすだけの非常に軽量なソリューションであるため、Elixir Phoenixのようなフレームワークともうまく連携して同居できます。 Alpine.jsTailwind CSSを最初からまとめておいたPETALのようなプロジェクトも存在します。 こちらについては後ほど語りましょう。

Node.js フレームワーク

1
Next.js

Next.js

The React Framework
+15.5k
937
823
965
1.1k
1.4k
1.2k
1.3k
1.1k
1.1k
1.8k
1.9k
1.3k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Strapi

Strapi

Open source Node.js Headless CMS to easily build customisable APIs
+11.8k
891
689
841
891
1.4k
1.3k
923
721
1.0k
800
618
1.2k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Nest

Nest

A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications on top of TypeScript & JavaScript (ES6, ES7, ES8)
+10.3k
1.0k
844
812
861
870
843
748
698
886
681
756
886
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Nuxt

Nuxt

The Intuitive Vue Framework
+8.2k
467
524
566
570
632
603
608
631
1.2k
505
1.2k
497
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Blitz

Blitz

️The Fullstack React Framework — built on Next.js
+6.0k
481
492
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

Node.jsフレームワークには大きく2つの種類が存在します。

ひとつはNext.jsNuxtのようなフルスタックフレームワークで、ReactやVue.jsなどをサーバサイドに持ってくるアプリケーション構築方法については賛否両論があります。

もうひとつは昨年のチャンピオンNestFastifyなどが属する、サーバ側のみで動作する古典的なフレームワークです。

この分野では2018年にトップだったNext.jsが再びチャンピオンに返り咲きました。 当初はReactをSSRするだけのソリューションとして名を上げましたが、今ではReactでフルスタックWebアプリケーションを構築するソリューションの筆頭になっています。

最新バージョンでは動的ページと静的ページの垣根を取り払うIncremental Static Regenerationにも対応し、多くのユースケースで最適な選択肢になりつつあります。

フルスタックといえば、BlitzRedwoodは、それひとつだけで完全なWebアプリケーションを構築できるという最高の開発者体験を提供することを目的としたプロジェクトです。

それにしても浮沈の激しいJavaScriptの世界で、11年前に誕生したExpressがいまだに一定の地位を保っているのは興味深いですね。

React エコシステム

1
Next.js

Next.js

The React Framework
+15.5k
937
823
965
1.1k
1.4k
1.2k
1.3k
1.1k
1.1k
1.8k
1.9k
1.3k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
React Query

React Query

Hooks for fetching, caching and updating asynchronous data in React
+13.6k
160
1.2k
1.3k
1.2k
837
1.1k
1.5k
1.0k
2.1k
1.1k
702
901
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Recoil

Recoil

An experimental state management library for React apps
+11.1k
4.2k
1.7k
673
593
557
554
504
351
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Ant Design

Ant Design

A UI Design Language and React UI library
+10.9k
966
1.1k
1.1k
979
957
969
958
782
751
604
675
704
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
React Hook Form

React Hook Form

React Hooks for forms validation (Web + React Native)
+10.8k
774
782
1.4k
958
999
888
1.2k
741
876
620
692
637
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

ゲストライター: Lee Robinson

Lee Robinsonは、Vercelでソリューションアーキテクトとして働いている開発者・ライター・クリエイターです。

2020年のReactエコシステムのテーマは安定性でした。 React17では破壊的変更を行わず、将来に向けての布石を仕込みました。 それがReact Server Componentsです。

React Server Componentsはクライアントのバンドルサイズを縮小し、起動にかかる時間を改善します。 さらにデータの取得、データベースやファイルシステムなどデータソースへのアクセスも簡単になります。

Next.jsは、Reactアプリケーションを構築するための最も有名なソリューションに成長しました。 React Server Componentsの最初のアプリになることでしょう。

React QueryRecoilReact Hook Formといったサポートライブラリは、hooksを主軸に進化、円熟してきました。 それぞれがReact開発の一部を簡素化してくれます。

これらのコンポーネントライブラリを組み合わせることで、React開発者はこれまで以上に多くのツールを手に入れることができるでしょう。

Vue エコシステム

1
Vue Element Admin

Vue Element Admin

A magical vue admin
+16.0k
1.1k
1.2k
1.7k
1.8k
1.6k
1.4k
1.3k
1.1k
1.1k
880
1.1k
1.1k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Vite

Vite

Next generation frontend tooling. It's fast!
+14.1k
545
1.9k
1.8k
923
1.5k
806
647
761
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Nuxt

Nuxt

The Intuitive Vue Framework
+8.2k
467
524
566
570
632
603
608
631
1.2k
505
1.2k
497
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Element Plus

Element Plus

A Vue.js 3.0 UI Library made by Element team
+7.3k
208
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
vue-next

vue-next

Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
+5.9k
537
729
2.7k
654
455
621
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

2020年のVueコミュニティ最大のニュースは、Vue3のリリースです。

Vue2に存在した幾つかの問題を解決するために、Composition APIという仕組みが導入されました。

  • コンポーネント内の論理的な繋がりによってコードを整理することが難しかった。
  • コンポーネントをまたいだコードの再利用が容易になる。 (Vue2のmixin、mixing factory、scoped slots等では不十分だった)
  • TypeScriptサポートが改善された。

バージョン3で導入された変更については、マイグレーションガイドをチェックしてみてください。

2020年には新たなWeb構築ツール、Viteが誕生しました。 ES modulesに対応し、コマンドラインからVueアプリケーションを構築する最速の方法です。

Angular エコシステム

1
ngx-admin

ngx-admin

Customizable admin dashboard template based on Angular 10+
+2.5k
209
216
288
228
251
234
200
155
181
160
184
148
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Material Design for Angular

Material Design for Angular

Component infrastructure and Material Design components for Angular
+1.5k
89
125
100
172
126
134
115
114
105
89
226
98
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Scully

Scully

The Static Site Generator for Angular apps
+1.4k
223
268
75
142
152
100
80
65
102
70
60
49
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Angular CLI

Angular CLI

CLI tool for Angular
+1.3k
151
121
111
108
109
121
112
82
71
115
79
46
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
NG-ZORRO

NG-ZORRO

Angular UI Component Library based on Ant Design
+1.2k
118
96
125
118
117
78
96
72
98
77
90
88
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

Angularのランキングは昨年とあまり変わりませんが、3位に新たなプロジェクトが登場しました。

ScullyはAngularにJamstackをもたらす静的サイトジェネレータです。 このプロジェクトは2019年12月に登場し、そしてわかりやすいドキュメントが存在します。

Angularは2020年に3つのメジャーバージョンがリリースされました。

2月にはバージョン9がリリースされました。 主な変更点はIvyコンパイラの導入で、これによってバンドルサイズが減少し、またビルドプロセスに大きな改善がもたらされました。 さらに年の後半にはバージョン10バージョン11がリリースされました。

Angularチームの2020年後半の主な仕事は、コミュニティの声に耳を傾けることでした。 コミュニティのニーズを理解するために、issueやPRに対応することに大きな努力を行いました。 また、チームが取り組んでいることの共有や、今後のロードマップの公開も行いました。

ビルドツール

1
esbuild

esbuild

An extremely fast JavaScript bundler and minifier
+16.6k
1.9k
819
749
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Rome

Rome

The Rome Toolchain. A linter, compiler, bundler, and more for JavaScript, TypeScript, HTML, Markdown, and CSS.
+14.2k
979
777
626
156
438
3.6k
359
283
128
374
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Vite

Vite

Next generation frontend tooling. It's fast!
+14.1k
545
1.9k
1.8k
923
1.5k
806
647
761
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Snowpack

Snowpack

WASM-powered frontend build tool. Fast, lightweight, unbundled ESM.
+10.1k
1.2k
486
154
328
1.6k
1.4k
655
618
510
918
692
1.1k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Webpack

Webpack

A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows for loading parts of the application on demand. Through "loaders", modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.
+4.5k
339
316
460
445
352
360
333
321
316
452
335
304
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

ゲストライター: Sébastien Lorber

SébastienはReactのアーリーアダプターであり、FacebookのオープンソースであるDocusaurusで働いています。

2020年はビルドツールの当たり年で、多くの新しいトレンドが産まれました。

SnowpackViteはES modulesの将来に賭けたアプローチです。 開発中のコードはバンドルせず、プロダクションコードのビルド時のみバンドルする方針で、非常に高速なフィードバックループを持っています。

swcesbuildは、それぞれRustとGoで書かれており、TypeScriptをサポートしていて、そして信じられないほどの高速で動作します。

Webpackは設定が複雑すぎると言われることが多く、よりシンプルに書けるParcelRollupが成熟してきました。 とはいえビルドツールの中心はいまだWebpackであることは変わらず、そしてWebpackの新たなキャッシングレイヤはビルドのパフォーマンスを大幅に改善します。

Monorepoがメインストリームになりつつあります。 YarnとLernaが広く使われ、そしてnpm 7も参加してきました。

個人的に2021年の去就を注目しているのはRomeToastTurborepoです。

CSS フレームワーク

1
Tailwind CSS

Tailwind CSS

A utility-first CSS framework for rapid UI development.
+15.5k
968
1.1k
885
1.1k
1.2k
1.1k
1.0k
1.2k
923
1.2k
2.6k
1.6k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Bootstrap

Bootstrap

The most popular HTML, CSS, and JavaScript framework for developing responsive, mobile first projects on the web.
+8.2k
444
493
730
785
720
974
1.0k
608
561
537
461
666
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Bulma

Bulma

Modern CSS framework based on Flexbox
+4.2k
379
353
382
444
406
317
343
329
328
294
279
227
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
new.css

new.css

A classless CSS framework to write modern websites using only HTML.
+3.1k
786
289
67
50
40
31
50
52
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Halfmoon

Halfmoon

Front-end framework with a built-in dark mode and full customizability using CSS variables; great for building dashboards and tools.
+2.0k
513
363
95
163
79
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

昨年はなかった項目ですが、Tailwind CSSの躍進と、そのユーティリティファーストの姿勢を評してこのセクションを追加しました。

BootstrapBulmaといった既存のCSSフレームワークに比べて、開発者がクラス名を合成してページやコンポーネントをスタイル化するための命名規則を提供しています。

State of CSSのアンケートにおいても、最も満足度の高いフレームワークになっています。

先日バージョン2がリリースされ、ダークモードなど多くの新機能が追加されました。

CSS in JavaScript

1
Styled Components

Styled Components

Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress
+4.8k
533
420
416
448
458
367
379
339
352
314
324
322
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Twin

Twin

Blends the magic of Tailwind with the flexibility of css-in-js
+2.8k
370
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Emotion

Emotion

CSS-in-JS library designed for high performance style composition
+2.5k
202
226
213
226
244
218
152
193
203
173
174
179
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Linaria

Linaria

Zero-runtime CSS in JS library
+1.8k
119
130
142
130
227
146
149
107
116
135
186
192
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Theme UI

Theme UI

Build consistent, themeable React apps based on constraint-based design principles
+1.8k
228
208
172
222
189
130
132
99
105
92
91
103
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

テストツール

1
Playwright

Playwright

Node.js library to automate Chromium, Firefox and WebKit with a single API
+19.7k
7.0k
2.6k
840
747
1.5k
1.3k
847
634
789
680
469
1.8k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Storybook

Storybook

The UI component explorer. Develop, document, & test for React, Vue, Angular, Ember, Web Components, & more!
+12.3k
780
770
751
731
1.2k
843
1.6k
1.8k
704
662
789
1.5k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Puppeteer

Puppeteer

Headless Chrome Node.js API
+10.6k
901
831
785
1.0k
980
788
975
1.0k
731
721
783
708
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Cypress

Cypress

Fast, easy and reliable testing for anything that runs in a browser.
+9.0k
750
715
558
528
681
708
915
627
866
482
527
1.4k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Headless Recorder

Headless Recorder

a Chrome extension that records your browser interactions and generates a Puppeteer or Playwright script
+6.0k
79
84
77
110
101
83
1.4k
330
1.1k
2.1k
203
126
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

モバイル

1
React Native

React Native

A framework for building native apps with React.
+8.8k
879
649
650
816
836
682
678
730
604
560
882
548
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Expo

Expo

An open-source platform for making universal native apps with React. Expo runs on Android, iOS, and the web.
+4.3k
338
267
302
339
361
310
380
922
262
195
223
224
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Quasar

Quasar

Responsive Single Page Apps, Server-side Render Apps, Progressive Web Apps, Hybrid Mobile Apps (that look native!) & Electron Apps, all using the same codebase.
+4.0k
298
333
333
331
318
359
493
322
303
273
287
277
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Ionic

Ionic

A powerful cross-platform UI toolkit for building native-quality iOS, Android, and Progressive Web Apps with HTML, CSS, and JavaScript.
+2.8k
212
187
268
229
190
181
168
214
205
186
192
499
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Sonar

Sonar

A desktop debugging platform for mobile developers.
+1.8k
134
106
238
382
214
149
91
103
112
83
83
80
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

JS コンパイラ

1
TypeScript

TypeScript

A superset of JavaScript that compiles to clean JavaScript output.
+10.4k
714
680
718
789
1.0k
792
878
1.2k
773
613
1.1k
832
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
swc

swc

A super-fast compiler written in rust
+3.4k
285
310
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Babel

Babel

A compiler for writing next generation JavaScript.
+2.7k
237
206
271
247
226
240
211
198
179
157
193
217
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Reason

Reason

Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems
+818
97
79
79
92
72
60
46
52
58
37
45
75
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Flow

Flow

Adds static typing to JavaScript to improve developer productivity and code quality.
+799
66
71
69
51
75
87
87
61
74
44
47
36
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

状態管理

1
Recoil

Recoil

An experimental state management library for React apps
+11.1k
4.2k
1.7k
673
593
557
554
504
351
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
XState

XState

State machines and statecharts for the modern web.
+5.1k
659
515
602
385
568
303
290
308
281
354
368
286
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Immer

Immer

Create the next immutable state by mutating the current one
+4.2k
401
357
405
433
338
371
319
339
305
293
272
239
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Zustand

Zustand

Bear necessities for state management in React
+3.2k
110
1.0k
737
396
315
417
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Redux

Redux

Predictable state container for JavaScript apps
+3.2k
246
260
342
331
319
255
284
253
196
159
197
206
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

GraphQL

1
Gatsby

Gatsby

Build blazing fast, modern apps and websites with React
+7.4k
813
629
648
725
794
664
659
517
446
493
370
380
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Hasura GraphQL Engine

Hasura GraphQL Engine

Blazing fast, instant realtime GraphQL APIs on Postgres with fine grained access control, also trigger webhooks on database events.
+5.9k
558
620
573
771
531
427
404
570
370
364
305
237
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
Redwood

Redwood

Bringing full-stack to the Jamstack.
+5.5k
649
352
436
287
232
173
178
188
366
656
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Prisma

Prisma

Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server & SQLite
+4.0k
271
510
422
533
510
470
500
622
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
Apollo client

Apollo client

A fully-featured, production ready caching GraphQL client for every UI framework and GraphQL server
+2.4k
166
193
190
204
223
188
268
191
186
166
147
161
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

学習リソース

1
JS Algorithms & Data Structures

JS Algorithms & Data Structures

Algorithms and data structures implemented in JavaScript with explanations and links to further readings
+31.9k
1.9k
1.2k
2.1k
4.4k
2.9k
1.6k
2.1k
3.5k
1.9k
1.6k
3.2k
4.2k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
2
Node.js Best Practices

Node.js Best Practices

The Node.js best practices list (January 2021)
+20.2k
968
1.3k
2.1k
956
2.1k
1.9k
831
3.2k
1.5k
1.3k
746
2.8k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
3
You Don't Know JS

You Don't Know JS

A book series on JavaScript
+18.0k
1.9k
2.3k
1.2k
1.1k
1.7k
1.6k
1.2k
1.4k
1.2k
1.3k
937
1.6k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
4
Clean Code

Clean Code

Clean Code concepts adapted for JavaScript
+15.1k
3.6k
1.4k
1.3k
686
721
908
734
1.0k
496
553
2.1k
1.2k
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月
5
30 seconds of code

30 seconds of code

Short JavaScript code snippets for all your development needs
+13.3k
798
576
552
732
737
625
782
772
3.2k
2.5k
820
946
1月
2月
3月
4月
5月
6月
7月
8月
9月
10月
11月
12月

おわりに

Best of JSが追跡している多くのカテゴリにおいて、幾つかの新しい潮流が発生し、JavaScriptの世界は今年も素晴らしい年になりました。

バックエンド開発者は今すぐDenoを使って、依存を気にすることなくTypeScriptを楽しむことができます。

フロントエンド開発者はesbuildSnowpack、そしてViteなど、より高速でシンプルなビルドソリューションを手に入れることができました。

ツールにおいては、NPM 7がひとつのリポジトリで複数のパッケージを扱えるようになるworkspacesをリリースしました。 これはライバルであるYarnが先に提供していた大きな利点のひとつです。

スタイルについては、よりシンプルなコンセプトを中心としたエコシステムを構築する、Tailwind CSSのような方向性のソリューションが他にも現れています。

2021年には何が期待できるでしょうか?

React Server Componentsがどのようなものになるかは興味深いところです。

Sebastian McKenzieがRomeにフルタイムで入っている今、そのJavaScriptツールを統一しようとする試みはどこまで進むでしょうか。 コンパイル、テスト、Lint、その他全て、全てが入ったたったひとつの依存は完成するでしょうか。

我々は、フルスタックフレームワークであるRedwoodにも注目しています。 これはGraphQLと相性が良く、そしてデータハンドリングに"cells"と呼ばれるユニークな仕組みを使っています。

ユーザのフィードバックに基づいた、本調査とは別観点からの結果を見たいのであれば、State of JSも参照してください。

みてくれてありがとう。 また来年会いましょう!

Japanese version

Rana Kualu
Houkago Atelier Toiro ha iizo

Authors

Available Translations

English

Pусский

Español

中文