Bootstrap

Bootstrap

The most popular HTML/CSS/JS library

Features

  • Comprehensive pre-built component library
  • Responsive grid system with flexbox and CSS Grid
  • Extensive utility classes for rapid styling
  • Sass variables and mixins for deep customization
  • JavaScript plugins for interactive components

Pros

  • Massive ecosystem — themes, templates, and community resources
  • Fastest path from zero to polished responsive UI
  • Extensive documentation and universal developer familiarity

Cons

  • Sites can look generic without significant customization
  • Large bundle size if not tree-shaking unused components
  • Opinionated design language can be hard to override

Overview

Bootstrap is the world’s most popular front-end framework for building responsive, mobile-first websites. Originally created at Twitter, it provides a comprehensive set of pre-built components (navbars, modals, cards, forms), a flexible grid system, and utility classes that let developers build polished UIs without writing much custom CSS.

Bootstrap 5 dropped the jQuery dependency, modernized its JavaScript plugins, introduced a utility API for generating custom utility classes, and added RTL support. Its Sass-based architecture allows deep customization through variables and mixins, so you can theme the entire framework to match your design system while still leveraging its battle-tested components.

When to Use

Bootstrap is the right choice when you need to ship a polished UI quickly, when your team values convention over configuration, or when building internal tools, admin dashboards, and prototypes where development speed matters more than design uniqueness.

Getting Started

npm install bootstrap
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">

<div class="container py-4">
  <div class="row g-3">
    <div class="col-md-6">
      <div class="card">
        <div class="card-body">
          <h5 class="card-title">Hello, Bootstrap!</h5>
          <button class="btn btn-primary">Get Started</button>
        </div>
      </div>
    </div>
  </div>
</div>