bootstrap vs bulma vs purecss vs tachyons vs tailwindcss
CSS フレームワークのアーキテクチャと実装戦略
bootstrapbulmapurecsstachyonstailwindcss類似パッケージ:

CSS フレームワークのアーキテクチャと実装戦略

bootstrapbulmapurecsstachyonstailwindcss は、ウェブサイトのスタイル構築を支援する CSS ライブラリですが、それぞれ設計思想が異なります。bootstrapbulma はすぐに使えるコンポーネントを提供するフレームワークです。purecss は軽量でモジュール化された CSS 基盤です。tachyonstailwindcss はユーティリティファーストであり、クラス名でスタイルを直接制御します。これらはプロジェクトの規模、カスタマイズ要件、および保守方針に応じて選択されます。

npmのダウンロードトレンド

3 年

GitHub Starsランキング

統計詳細

パッケージ
ダウンロード数
Stars
サイズ
Issues
公開日時
ライセンス
bootstrap0174,1219.63 MB4747ヶ月前MIT
bulma050,0666.97 MB5211年前MIT
purecss023,751229 kB28-BSD-3-Clause
tachyons011,707-896年前MIT
tailwindcss094,197778 kB1008日前MIT

CSS フレームワークのアーキテクチャと実装戦略

bootstrapbulmapurecsstachyonstailwindcss は、すべてウェブサイトの見た目を整えるためのツールですが、内部の仕組みと使い方が大きく異なります。エンジニアリングの観点から、これらがどのように違い、どのような場面で真価を発揮するかを比較します。

🏗️ 設計思想:コンポーネント対ユーティリティ

bootstrapbulma はコンポーネントベースです。

  • 事前に設計された「ボタン」や「カード」といった部品を使います。
  • クラス名は意味を表し(例:btn)、見た目はテーマで一括変更します。
<!-- bootstrap -->
<button class="btn btn-primary">送信</button>

<!-- bulma -->
<button class="button is-primary">送信</button>

tachyonstailwindcss はユーティリティファーストです。

  • 色、余白、サイズなどを個別のクラスで指定します。
  • HTML にスタイル情報が直接書かれ、自由度が高いです。
<!-- tachyons -->
<button class="btn bg-blue white pa2">送信</button>

<!-- tailwindcss -->
<button class="bg-blue-500 text-white px-4 py-2">送信</button>

purecss はモジュールベースです。

  • 必要な機能(グリッドやボタン)だけを個別に読み込みます。
  • 最小限のスタイルで、既存のデザインに合わせやすいです。
<!-- purecss -->
<button class="pure-button pure-button-primary">送信</button>

🎨 カスタマイズ方法:変数対設定ファイル

bootstrap は Sass 変数でテーマを変更します。

  • 色やフォントを変数で定義し、ビルド時に CSS を生成します。
  • 標準の見た目を保ちつつ、ブランドカラーに合わせやすいです。
// bootstrap: _variables.scss
$primary: #563d7c;
@import "bootstrap";

bulma も Sass 変数を使いますが、よりシンプルです。

  • 変数を上書きしてインポートするだけで変更が反映されます。
  • 構造が単純で、カスタマイズの手間が少ないです。
// bulma: custom.scss
$primary: #00d1b2;
@import "bulma/bulma";

purecss はカスタマイズより標準重視です。

  • 基本的には標準クラスを使い、必要に応じて独自 CSS を追加します。
  • 設定ファイルはなく、軽量さを維持します。
/* purecss: 追加スタイル */
.pure-button-primary {
  background-color: #000;
}

tachyons はクラス名自体が設定です。

  • 変数変更ではなく、使うクラスを選びます。
  • 設計システムが固定されており、変更より統一を重視します。
<!-- tachyons: 色変更はクラス変更 -->
<button class="bg-red white">送信</button>

tailwindcss は設定ファイルで全てを制御します。

  • tailwind.config.js で色、スペース、フォントを定義します。
  • 独自のデザインシステムを構築するのに最も適しています。
// tailwindcss: tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: { primary: '#00d1b2' }
    }
  }
}

🧩 JavaScript 依存関係:含む対含まない

bootstrap は JavaScript を含みます。

  • モーダル、タブ、ドロップダウンなどの動作が最初から使えます。
  • 機能が多い分、バンドルサイズが大きくなる可能性があります。
// bootstrap: JS 機能の利用
const modal = new bootstrap.Modal(document.getElementById('myModal'));
modal.show();

bulma は CSS のみです。

  • 動作させるには自分で JavaScript を書くか、別のライブラリを使います。
  • 軽量で、好きな JS ライブラリと組み合わせられます。
// bulma: 自分で実装が必要
document.querySelector('.navbar-burger').addEventListener('click', () => {
  // トグル処理を記述
});

purecss も CSS のみです。

  • 非常に軽量で、インタラクションは完全に開発者任せです。
  • 既存の JS 框架にスタイルだけ追加する時に便利です。
// purecss: 独自 JS と組み合わせ
// 特定のクラスにイベントリスナーを付与するなどの処理を自行う

tachyons は CSS のみです。

  • 機能クラスはありますが、動作ロジックは含みません。
  • 静的なスタイル付けに特化しています。
// tachyons: ロジックは別途実装
// クラス名はスタイルのみを定義

tailwindcss は CSS 生成ツールです。

  • 基本は CSS のみですが、公式の JS プラグインやヘッドレス UI ライブラリと併用します。
  • 必要な機能だけを JS で追加できる柔軟性があります。
// tailwindcss: Headless UI などを併用
import { Menu } from '@headlessui/react';
// スタイルは Tailwind クラスで付与

🛠️ 保守状況と将来性

bootstrap は活発に保守されています。

  • 最新版(v5)は jQuery 依存をなくし、モダンな標準に準拠しています。
  • 長期的なサポートが見込めるため、企業プロジェクトに安心です。

bulma も安定して保守されています。

  • CSS 専門のフレームワークとして人気があり、コミュニティが活発です。
  • 仕様が安定しており、突然の大きな変更は少ないです。

purecss は安定していますが更新は緩やかです。

  • 必要な機能は揃っており、変更よりも安定を求めています。
  • 新規機能の追加は少ないですが、既存機能は信頼できます。

tachyons は開発が完了状態にあります。

  • 作者により「完成された」とされており、大きな更新は期待できません。
  • 既存の運用には使えますが、新規大規模プロジェクトでは慎重な判断が必要です。

tailwindcss は非常に活発に開発されています。

  • 新機能(JIT モードなど)が頻繁に追加され、エコシステムが拡大しています。
  • 最新のウェブ技術への対応が早く、将来性が高いです。

📊 比較まとめ

特徴bootstrapbulmapurecsstachyonstailwindcss
タイプコンポーネントコンポーネントモジュールユーティリティユーティリティ
JS 依存あり(標準)なしなしなしなし(ツール)
カスタマイズSass 変数Sass 変数CSS 上書きクラス選択設定ファイル
保守状況活発安定安定完了活発
適した用途企業システムモダンな LP軽量サイト小規模運用設計システム

💡 結論

bootstrap は、標準的な部品と動作をすぐに欲しい時に最適です。特に、JavaScript によるインタラクションを最初から含めたい場合に便利です。

bulma は、CSS だけで綺麗なレイアウトを組みたい時に選びます。JS ライブラリを自分で選んで組み合わせたいプロジェクトに向いています。

purecss は、サイズを極限まで減らしたい場合に有効です。既存のスタイルを壊さずに、最小限の基盤を整えたい時に使います。

tachyons は、安定したクラス体系で小規模なサイトを維持する場合に適しています。ただし、大規模な拡張が必要な場合は他の選択肢を検討します。

tailwindcss は、独自のデザインシステムを構築したい場合に最も適しています。設定で細かく制御でき、大規模開発での一貫性を保つのに役立ちます。

最終的には、プロジェクトの規模とチームの習熟度に合わせて選びます。迅速な立ち上げなら bootstrap、自由度と拡張性なら tailwindcss が主な選択肢となります。

選び方: bootstrap vs bulma vs purecss vs tachyons vs tailwindcss

  • bootstrap:

    標準的な UI 部品と JavaScript 機能(モーダルやドロップダウンなど)が必要なら選びます。企業システムや迅速なプロトタイプ作成に適しており、ドキュメントが充実しています。

  • bulma:

    JavaScript 依存なしで綺麗なコンポーネントを使いたい場合に適しています。フレックスボックスベースで現代的なレイアウトが組みやすく、CSS のみで完結させたいプロジェクトに向いています。

  • purecss:

    極めて軽量なフットプリントが必要な場合に選びます。モジュールごとに導入できて無駄がなく、既存のデザインを壊さずに基盤だけ整えたい時に有効です。

  • tachyons:

    機能する CSS の考え方で、安定したクラス体系を好む場合に適しています。大規模な変更よりは維持を重視し、追加の設定なしですぐに始めたい小規模プロジェクトに向いています。

  • tailwindcss:

    高度なカスタマイズと設計システム構築が必要な場合に選びます。設定ファイルで細かく制御でき、重複する CSS を排除したい大規模開発や、独自のデザイン言語を作りたい時に最適です。

bootstrap のREADME

Bootstrap logo

Bootstrap

Sleek, intuitive, and powerful front-end framework for faster and easier web development.
Explore Bootstrap docs »

Report bug · Request feature · Blog

Bootstrap 5

Our default branch is for development of our Bootstrap 5 release. Head to the v4-dev branch to view the readme, documentation, and source code for Bootstrap 4.

Table of contents

Quick start

Several quick start options are available:

  • Download the latest release
  • Clone the repo: git clone https://github.com/twbs/bootstrap.git
  • Install with npm: npm install bootstrap@v5.3.8
  • Install with yarn: yarn add bootstrap@v5.3.8
  • Install with Bun: bun add bootstrap@v5.3.8
  • Install with Composer: composer require twbs/bootstrap:5.3.8
  • Install with NuGet: CSS: Install-Package bootstrap Sass: Install-Package bootstrap.sass

Read the Getting started page for information on the framework contents, templates, examples, and more.

Status

Build Status npm version Gem version Meteor Atmosphere Packagist Prerelease NuGet Coverage Status CSS gzip size CSS Brotli size JS gzip size JS Brotli size Open Source Security Foundation Scorecard Backers on Open Collective Sponsors on Open Collective

What’s included

Within the download you’ll find the following directories and files, logically grouping common assets and providing both compiled and minified variations.

Download contents
bootstrap/
├── css/
│   ├── bootstrap-grid.css
│   ├── bootstrap-grid.css.map
│   ├── bootstrap-grid.min.css
│   ├── bootstrap-grid.min.css.map
│   ├── bootstrap-grid.rtl.css
│   ├── bootstrap-grid.rtl.css.map
│   ├── bootstrap-grid.rtl.min.css
│   ├── bootstrap-grid.rtl.min.css.map
│   ├── bootstrap-reboot.css
│   ├── bootstrap-reboot.css.map
│   ├── bootstrap-reboot.min.css
│   ├── bootstrap-reboot.min.css.map
│   ├── bootstrap-reboot.rtl.css
│   ├── bootstrap-reboot.rtl.css.map
│   ├── bootstrap-reboot.rtl.min.css
│   ├── bootstrap-reboot.rtl.min.css.map
│   ├── bootstrap-utilities.css
│   ├── bootstrap-utilities.css.map
│   ├── bootstrap-utilities.min.css
│   ├── bootstrap-utilities.min.css.map
│   ├── bootstrap-utilities.rtl.css
│   ├── bootstrap-utilities.rtl.css.map
│   ├── bootstrap-utilities.rtl.min.css
│   ├── bootstrap-utilities.rtl.min.css.map
│   ├── bootstrap.css
│   ├── bootstrap.css.map
│   ├── bootstrap.min.css
│   ├── bootstrap.min.css.map
│   ├── bootstrap.rtl.css
│   ├── bootstrap.rtl.css.map
│   ├── bootstrap.rtl.min.css
│   └── bootstrap.rtl.min.css.map
└── js/
    ├── bootstrap.bundle.js
    ├── bootstrap.bundle.js.map
    ├── bootstrap.bundle.min.js
    ├── bootstrap.bundle.min.js.map
    ├── bootstrap.esm.js
    ├── bootstrap.esm.js.map
    ├── bootstrap.esm.min.js
    ├── bootstrap.esm.min.js.map
    ├── bootstrap.js
    ├── bootstrap.js.map
    ├── bootstrap.min.js
    └── bootstrap.min.js.map

We provide compiled CSS and JS (bootstrap.*), as well as compiled and minified CSS and JS (bootstrap.min.*). Source maps (bootstrap.*.map) are available for use with certain browsers’ developer tools. Bundled JS files (bootstrap.bundle.js and minified bootstrap.bundle.min.js) include Popper.

Bugs and feature requests

Have a bug or a feature request? Please first read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Documentation

Bootstrap’s documentation, included in this repo in the root directory, is built with Astro and publicly hosted on GitHub Pages at https://getbootstrap.com/. The docs may also be run locally.

Documentation search is powered by Algolia's DocSearch.

Running documentation locally

  1. Run npm install to install the Node.js dependencies, including Astro (the site builder).
  2. Run npm run test (or a specific npm script) to rebuild distributed CSS and JavaScript files, as well as our docs assets.
  3. From the root /bootstrap directory, run npm run docs-serve in the command line.
  4. Open http://localhost:9001 in your browser, and voilà.

Learn more about using Astro by reading its documentation.

Documentation for previous releases

You can find all our previous releases docs on https://getbootstrap.com/docs/versions/.

Previous releases and their documentation are also available for download.

Contributing

Please read through our contributing guidelines. Included are directions for opening issues, coding standards, and notes on development.

Moreover, if your pull request contains JavaScript patches or features, you must include relevant unit tests. All HTML and CSS should conform to the Code Guide, maintained by Mark Otto.

Editor preferences are available in the editor config for easy use in common text editors. Read more and download plugins at https://editorconfig.org/.

Community

Get updates on Bootstrap’s development and chat with the project maintainers and community members.

Versioning

For transparency into our release cycle and in striving to maintain backward compatibility, Bootstrap is maintained under the Semantic Versioning guidelines. Sometimes we screw up, but we adhere to those rules whenever possible.

See the Releases section of our GitHub project for changelogs for each release version of Bootstrap. Release announcement posts on the official Bootstrap blog contain summaries of the most noteworthy changes made in each release.

Creators

Mark Otto

Jacob Thornton

Thanks

BrowserStack

Thanks to BrowserStack for providing the infrastructure that allows us to test in real browsers!

Netlify

Thanks to Netlify for providing us with Deploy Previews!

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

OC sponsor 0 OC sponsor 1 OC sponsor 2 OC sponsor 3 OC sponsor 4 OC sponsor 5 OC sponsor 6 OC sponsor 7 OC sponsor 8 OC sponsor 9

Backers

Thank you to all our backers! 🙏 [Become a backer]

Backers

Copyright and license

Code and documentation copyright 2011-2025 the Bootstrap Authors. Code released under the MIT License. Docs released under Creative Commons.