bootstrap-vite
Include and bundle Bootstrap 6's CSS and JavaScript in a project using Vite. Use when setting up Bootstrap with Vite, bundling Bootstrap's Sass and JS through Vite, or creating a Vite-based Bootstrap project.
How do I install this agent skill?
npx skills add https://github.com/twbs/bootstrap --skill bootstrap-viteIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill provides a legitimate and safe guide for setting up a web development environment using Bootstrap 6 and Vite. All dependencies and referenced resources are official Bootstrap or well-known community packages.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
Bootstrap 6 with Vite
Set up a Bootstrap 6 project bundled with Vite. Requires Node.js and terminal familiarity.
Workflow
- Step 1: Set up npm and install dependencies
- Step 2: Create the project structure
- Step 3: Configure Vite
- Step 4: Import Bootstrap's CSS and JS
- Step 5: Verify
Step 1: Set up npm and install dependencies
-
Create the project and initialize npm:
mkdir my-project && cd my-project npm init -y -
Install Vite:
npm i --save-dev vite -
Install Bootstrap and its optional peer dependencies (omit
@floating-ui/domif not using menus/popovers/tooltips; omitvanilla-calendar-proif not using the datepicker):npm i --save bootstrap@6.0.0-alpha.1 @floating-ui/dom vanilla-calendar-pro -
Install Sass to compile Bootstrap's source:
npm i --save-dev sass
Step 2: Create the project structure
mkdir {src,src/js,src/scss}
touch src/index.html src/js/main.js src/scss/styles.scss vite.config.js
Target layout:
my-project/
├── src/
│ ├── js/
│ │ └── main.js
│ ├── scss/
│ │ └── styles.scss
│ └── index.html
├── package-lock.json
├── package.json
└── vite.config.js
Step 3: Configure Vite
-
vite.config.js:import path from 'path' export default { root: path.resolve(__dirname, 'src'), build: { outDir: '../dist' }, server: { port: 8080 } } -
src/index.html— load the entry module:<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Bootstrap w/ Vite</title> <script type="module" src="./js/main.js"></script> </head> <body> <div class="container py-4 px-3 mx-auto"> <h1>Hello, Bootstrap and Vite!</h1> <button class="btn-solid theme-primary">Primary button</button> </div> </body> </html> -
package.json— add the start script:{ "scripts": { "start": "vite", "test": "echo \"Error: no test specified\" && exit 1" } } -
Start Vite:
npm start
Step 4: Import Bootstrap's CSS and JS
-
src/scss/styles.scss— import the source Sass with@use(never@import):// Import all of Bootstrap's CSS @use "bootstrap/scss/bootstrap";To customize, override Bootstrap's CSS token maps (
$root-tokens,$*-tokens) — see Customize › Sass. Token names are written unprefixed in Sass; Bootstrap's dist/CDN CSS adds the--bs-prefix via PostCSS, so compiling the source yourself keeps them unprefixed. -
src/js/main.js— load the CSS and import Bootstrap's JS. Floating UI and Vanilla Calendar Pro are imported automatically through Bootstrap:// Import our custom CSS, then all of Bootstrap’s JS import '../scss/styles.scss' import * as bootstrap from 'bootstrap'Import only the plugins you need to keep bundle sizes down:
import { Tooltip, Toast, Popover } from 'bootstrap'
Step 5: Verify
- Run
npm startand openhttp://localhost:8080— the.containerand.btn-solid.theme-primarybutton should be styled. - Confirm the browser console is free of module-resolution errors (Bootstrap, Floating UI, Vanilla Calendar Pro).
- Trigger a JS component (tooltip/dialog) to confirm the JS bundle works.
- Bootstrap 6 requires a browser that supports
oklch()andcolor-mix().
For an optimized build that imports only the parts of Bootstrap you use, see the twbs/examples Vite project.
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/twbs/bootstrap/bootstrap-vite">View bootstrap-vite on skillZs</a>