本文へスキップ
totonoe.tech

フレームワークを整える

初級

フレームワークの選び方を整える

= React か Vue かで迷ったときの「こんな時はコレ」を、5つの質問と比較表で

① 5つの質問に答える

すべて選ぶと、下に候補(JS系2本+CSS系1本)が出ます。回答はこの端末内だけで処理します(送信ゼロ)。

① 何を作りますか?

② チームと情報

③ 既存の技術

④ 重視するもの

⑤ CSS

② こんな時は、こう考える

よくある場面ごとの早見です。事実(実装方式・配布サイズ・SSRの有無など)に基づく傾向であり、断定ではありません。

既存のjQueryサイトに少しだけ動きを足したい

→ Alpine.js

HTML属性に振る舞いを書くだけで、ビルド環境を用意せず導入できます。

求人と日本語情報の多さで選びたい

→ React

当サイトの目安で求人・情報量が最も多い分野です。

1人で早く形にしたい

→ Vue

テンプレート構文がHTMLに近く、学習コストが低めです。

配布サイズを最小にしたい

→ Svelte か Preact

Svelteはコンパイル時にランタイムが消え、Preactは約4KBの軽量なReact互換ライブラリです。

Web Componentsとして他フレームワークと混ぜたい

→ Lit

ブラウザ標準のCustom Elementsの上に薄い層を重ねる方式です。

SEOを重視したWebサイトを作りたい

→ Next.js・Nuxt・SvelteKitのあるもの

React(Next.js)・Vue(Nuxt)・Svelte(SvelteKit)にはSSR向けのメタフレームワークがあります。

ビルド環境を用意せず<script>タグ1本で使いたい

→ jQuery か Alpine.js

どちらもCDN読み込みだけで動く方式です。

学習コストを最優先に抑えたい

→ jQuery・Alpine.js・Bootstrap

当サイトの目安で学習コスト1(最も易しい)の3本です。

大きめのチーム開発・長期保守を見込む

→ React か Vue

エコシステムの広さ・採用実績が当サイトの目安で上位です。

ReactのAPIのまま配布サイズだけ減らしたい

→ Preact

React互換のAPI(useState等)を、より小さい配布サイズで提供します。

独自デザインを自分で細かく組みたい

→ Tailwind CSS

ユーティリティクラスの組み合わせで、既製部品に縛られずスタイリングできます。

ボタンやモーダルをすぐ整えたい

→ Bootstrap

部品単位で用意されたクラスをそのまま使えます。

③ 9本の横断比較表

誕生年・主体・実装方式・配布サイズ・学習コスト・エコシステム・求人情報・SSRの有無・一言でまとめました。

名前 誕生年 作者・主体 種類 サイズ帯 学習コスト エコシステム 求人情報 SSR 一言 ④ 練習場
React 2013 Meta(2013) 仮想DOM 3 / 5 5 / 5 5 / 5 Next.js 仮想DOMでUIを組み立てる、最も採用例と日本語情報が多いライブラリ。 試す →
Vue 2014 Evan You(2014) 仮想DOM 2 / 5 4 / 5 4 / 5 Nuxt テンプレート構文がHTMLに近く、1人・少人数での立ち上げが速い。 試す →
Svelte 2016 Rich Harris(2016) コンパイラ 2 / 5 3 / 5 2 / 5 SvelteKit ビルド時にコンパイルしてランタイムを持たない、軽さ最優先の選択肢。 試す →
jQuery 2006 John Resig(2006) DOM操作ライブラリ 1 / 5 3 / 5 4 / 5 なし $()で実DOMを直接操作する、ビルド不要・最速で書き始められるライブラリ。 試す →
Alpine.js 2019 Caleb Porzio(2019) 属性ベース 1 / 5 2 / 5 2 / 5 なし HTML属性に振る舞いを書くだけの、既存ページへの「一振りかけ」ライブラリ。 試す →
Lit 2019 Google(2019・Polymerの後継) Web Components 3 / 5 2 / 5 1 / 5 なし ブラウザ標準のWeb Componentsとして書く、フレームワークを問わず混ぜられる部品。 試す →
Preact 2015 Jason Miller(2015) 仮想DOM 3 / 5 3 / 5 2 / 5 Fresh React互換のAPIを、はるかに小さい配布サイズで動かす軽量版。 試す →
Tailwind CSS 2017 Tailwind Labs(2017) ユーティリティCSS 2 / 5 5 / 5 4 / 5 なし 色・余白・配置などをユーティリティクラスの組み合わせで組み立てるCSS。 試す →
Bootstrap 2011 Twitter発(2011) 部品CSS 1 / 5 5 / 5 5 / 5 なし ボタンやモーダル等、部品単位で用意されたクラスをそのまま使うCSS。 試す →

⚠️ learning(学習コスト)・ecosystem(エコシステムの広さ)・jobs(求人・日本語情報量)の数値は、当サイトが掲載する9本の中での相対的な目安です。公的な調査や第三者機関の評価ではなく、当サイトの独自判断です。size(配布サイズ)も同様に「small/medium/large」の帯で示すおおよその目安で、実際の数値(bundlephobia等)は変わることがあります。 このページは優劣を断定するものではなく、「向いている場面/向かない場面」を事実ベースで整理したものです。5問の回答はこの端末内だけで処理し、外部へは送信しません(送信ゼロ)。

このツールについて

「React か Vue かで迷う」——そんなときに、優劣の断定ではなく「こんな時はこっちが向いている」を、誕生年・実装方式・学習コスト・エコシステム・求人情報などの事実から並べます。5問に答えると上位の候補が出ます。各候補は /react/ 等の練習場でそのまま試せます。

React か Vue か迷う」を、誕生年・実装方式・配布サイズ・学習コスト・求人情報・SSR の有無で整理。5問に答えると根拠つきで上位候補(JS 2本+CSS 1本)が出ます。各候補は練習場へそのままリンク。

主な機能

  • JS 系7本(React/Vue/Svelte/jQuery/Alpine.js/Lit/Preact)と CSS 系2本(Tailwind/Bootstrap)を横断比較
  • 5問の診断で根拠つきの上位候補(JS 2本+CSS 1本)を提案
  • 「こんな時はコレ」の定型カード12枚
  • 各練習場ページにも「向いている場面/向かない場面」の枠を表示
  • 優劣を断定せず向き不向きを整理・数値は当サイトの目安と明記・送信ゼロ

よくある質問

Q. React と Vue は結局どちらがよいのですか?

A. 優劣は断定していません。求人や日本語情報の多さを重視するなら React、1人で早く形にするなら学習コストの目安で Vue が有利、といった場面ごとの向き不向きを5問の診断と比較表で示しています。

Q. 学習コストやエコシステムの数値は公的な調査データですか?

A. いいえ。当サイトが掲載する9本の中での相対的な目安で、独自の判断です(ページ下部に明記しています)。誕生年・作者・実装方式・SSR の有無は各プロジェクトの公知の事実です。

Q. Preact と Bootstrap のリンク先が React と Tailwind のページなのはなぜですか?

A. それぞれ React 練習場・Tailwind 練習場の中のタブとして実装しているためです。リンク先のタブに移動してから試せます。

入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

続けて整える

KOINOBORI ECOSYSTEM

私たちが運営するサイト