jsdelivr / bootstrapcdn

Free Bootstrap CDN hosting
https://www.bootstrapcdn.com
MIT License
1.35k stars 261 forks source link
bootlint bootstrap bootstrap4 bootstrapcdn bootswatch bootswatch-theme cdn font font-awesome fontawesome fontawesome4 fontawsome javascript jsdelivr stackpath stylesheet theme

BootstrapCDN

bootstrap-github-cover

jsDelivr Download Stats Build Status Coverage Status

BootstrapCDN is the easiest and fastest way to get started with Bootstrap, Font Awesome, Bootswatch and Bootstrap Icons. Simply visit the main site and copy the URLs you need. New versions of all projects are pulled directly from NPM.

Or follow the instructions bellow for more advanced use cases.

Example CDN links

These will pull the 4.6.0 version. It is safe to use SRI with static versions like this.

<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" rel="stylesheet">

<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"></script>

Version aliasing

To auto-update to latest minor version you can specify for example 4 as the version in the URL. You will then get the latest v4 version available with a delay of up to 7 days.

<!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@4/dist/css/bootstrap.min.css" rel="stylesheet">

<!-- JavaScript Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4/dist/js/bootstrap.bundle.min.js"></script>

Warning: Do not use SRI hashes with dynamic URLs like this or the next update will break your site.

A more detailed documentation is available on jsDelivr's Github page.

Using the API to pull versions

For certain use-cases it is possible to automate updates using our API. You can use it to get the list of versions available on the CDN including the latest one.

https://data.jsdelivr.com/v1/package/npm/bootstrap
{
    "tags": {
        "latest": "4.6.0",
        "previous": "3.4.1",
        "next": "5.0.0-beta2"
    },
    "versions": [
        "5.0.0-beta2",
...
        "4.6.0",
...
    ]
}

Contributing

Requirements

  1. Node.js

Running

Use npm run <task>.

Development

npm install

npm test && npm run dev

Demonized

# start development server and watch for changes
npm run dev
# or
npm run watch

# start production server
npm start

# and more
npm run

Configuration

config/_app.yml

The Express.js app configuration.

config/_files.yml

Contains the CDN files we host.The SRI values are updated by running npm run integrity.

config/helmet-csp.js

Our CSP config using https://github.com/helmetjs/csp

Updating Bootstrap/Bootlint/Bootswatch

Replace package by the package you want to update and version with its version in the following commands:

npm i package@version -ED
npm run package version
  1. Update config/_config.yml accordingly
  2. npm run integrity
  3. Make sure npm run all passes after the files are on S3/CDN and verify the frontend works as expected without any visual breakage