Bootstrap Icons are packaged up and published to npm. We only include the processed SVGs in this package—it's up to you and your team to implement. Read our docs for usage instructions.
npm i bootstrap-icons
For those using Packagist, you can also install Bootstrap Icons via Composer:
composer require twbs/bootstrap-icons
Depending on your setup, you can include Bootstrap Icons in a handful of ways.
- Copy-paste SVGs as embedded HTML
- Reference via
- Use the SVG sprite
- Include via CSS
Clone the repo, install dependencies, and start the Hugo server locally.
git clone https://github.com/twbs/icons/
http://localhost:4000 in your browser.
Here are some key scripts you'll use during development. Be sure to look to our
npm run output for a complete list of scripts.
|Alias for running
|Starts a local Hugo server
|Generates permalink pages for each icon with template Markdown
|Processes and optimizes SVGs in
icons directory, generates fonts and sprite
Icons are typically only added by @mdo, but exceptions can be made. New glyphs are designed in Figma first on a 16x16px grid, then exported as flattened SVGs with
fill (no stroke). Once a new SVG icon has been added to the
icons directory, we use an npm script to:
- Optimize our SVGs with SVGO.
- Modify the SVGs source code, removing all attributes before setting new attributes and values in our preferred order.
npm run icons to run the script, run
npm run pages to build permalink pages, complete those pages, and, finally, commit the results in a new branch for updating.
Warning: Please exclude any auto-generated files, like
bootstrap-icons.svg from your branch because they cause conflicts, and we generally update the dist files before a release.