← back to all libraries
// ICON LIBRARY

Bootstrap Icons

Free, high quality icons from the Bootstrap team

reactvuenextjsMIT
GitHub →Official Site →

STATS

1,800
Icons
7,000
GitHub Stars
0.5M
Weekly Downloads
MIT
License
~150kb (font) or ~1kb per SVG
Bundle Size
2019
Since

OVERVIEW

Bootstrap Icons is the official icon library from the Bootstrap team, offering over 1,800 free SVG icons. While designed to work perfectly with Bootstrap CSS, the library is completely framework-agnostic and works well in any web project.

The library covers an impressive range of categories and is particularly strong in UI-specific icons — form controls, navigation patterns, media controls, and system symbols are all well represented. Both outline and filled variants are available for most icons.

Bootstrap Icons can be used as SVG sprites, individual SVGs, or an icon font. For React projects there are community packages available. The library does not ship with official TypeScript definitions or a dedicated React package, which puts it behind modern alternatives in developer experience.

// VERDICTBootstrap Icons is excellent if you are already in the Bootstrap ecosystem or need a large, reliable icon set for a traditional web project. For modern React or Next.js applications, Lucide or Heroicons provide a better developer experience with TypeScript and tree-shaking built in.

INSTALLATION

react
npm install bootstrap-icons
nextjs
npm install bootstrap-icons

// Note: Import the CSS in your root layout. Icons are used as className strings on i elements.
vue
npm install bootstrap-icons
svelte
npm install bootstrap-icons
vanilla
npm install bootstrap-icons

CODE EXAMPLES

basic
// Import CSS in your layout
import 'bootstrap-icons/font/bootstrap-icons.css'

export default function App() {
  return (
    <div>
      <i className="bi bi-house" />
      <i className="bi bi-gear" />
      <i className="bi bi-person" />
    </div>
  )
}
fill Variant
import 'bootstrap-icons/font/bootstrap-icons.css'

export default function App() {
  return (
    <div>
      {/* Outline variant */}
      <i className="bi bi-heart text-gray-500" />
      {/* Fill variant */}
      <i className="bi bi-heart-fill text-red-500" />
    </div>
  )
}
svg Usage
// Use individual SVGs for better performance
import houseSvg from 'bootstrap-icons/icons/house.svg'

export default function App() {
  return <img src={houseSvg} alt="Home" width={24} height={24} />
}

PROS & CONS

PROS
1800+ icons
A large and comprehensive icon set with excellent coverage of common UI patterns.
Both outline and filled
Most icons have both outline and fill variants, accessible by adding -fill to the icon name.
Backed by Bootstrap team
Long-term maintenance is likely given Bootstrap's massive user base and commercial backing.
Works everywhere
Framework-agnostic — works in any HTML project, not just Bootstrap applications.
Extensive documentation
Bootstrap's documentation quality is excellent, and Bootstrap Icons benefit from the same attention.
CONS
No official React package
There is no official typed React component package. Using it in React requires the CSS font approach.
No TypeScript support
Icons are className strings with no TypeScript definitions or autocomplete.
Not tree-shakable by default
The font approach loads all icons. Individual SVG imports require more manual setup.
Associated with Bootstrap
Some developers avoid Bootstrap Icons simply because of the Bootstrap association, even though it is framework-agnostic.

WHO SHOULD USE THIS

USE IF YOU...
Projects already using Bootstrap CSS
Traditional web projects using HTML, CSS and minimal JavaScript
Teams that need a large icon set with good documentation
Projects where the Bootstrap design language is already established
AVOID IF YOU...
Modern React and Next.js projects — use Lucide or Heroicons instead
Projects where TypeScript and tree-shaking are priorities
Teams building performance-critical applications

FREQUENTLY ASKED QUESTIONS

Q.Do I need Bootstrap CSS to use Bootstrap Icons?
A.No. Bootstrap Icons is completely independent of Bootstrap CSS. You can use it in any project regardless of what CSS framework you use.
Q.Is Bootstrap Icons free for commercial use?
A.Yes. Bootstrap Icons uses the MIT license which allows free commercial use without attribution.
Q.How do I use Bootstrap Icons in React?
A.Import the CSS file in your root component, then use icon class names as className on i elements. For example: import 'bootstrap-icons/font/bootstrap-icons.css' then <i className='bi bi-house' />.
Q.How many Bootstrap Icons are there?
A.Bootstrap Icons has over 1,800 icons as of version 1.11. New icons are added with each release.
Q.Can I use Bootstrap Icons with Tailwind CSS?
A.Yes. Since icons are HTML elements you can apply Tailwind text color and sizing utilities directly to them.

COMPARE WITH ALTERNATIVES

Bootstrap Icons vs Lucide IconsBootstrap Icons vs HeroiconsBootstrap Icons vs Tabler IconsBootstrap Icons vs Phosphor IconsBootstrap Icons vs Remix IconBootstrap Icons vs Feather IconsBootstrap Icons vs Radix Icons