Skip to main content

Install via npm

The official way to get boodoo is to install it as a package manager dependency. This lets you use the precompiled CSS and JS, or compile your own customized version from source.

Install with npm

npm install boodoo

boodoo is available as an npm package. It ships compiled CSS and JS in dist/, plus the Sass and Less source.

Installed UI Demo

Once installed, simply import Boodoo to activate ready-to-use buttons, alerts, and components in your application:

v1.1.5
<button type="button" class="btn btn-primary"><span>npm Package Ready</span></button>
<button type="button" class="btn btn-outline-dark"><span>Modular Import</span></button>
<span class="badge bg-success"><span>v1.1.5</span></span>

ES modules

If you're using a bundler like Vite, webpack, or Rollup, you can import directly from the package entry point or via deep path:

// Standard package import (ESM)
import boodoo from 'boodoo';
import { Modal, Toast, Collapse } from 'boodoo';

// Or direct bundle path
import boodoo from 'boodoo/dist/js/boodoo.esm.js';

Import compiled CSS

// Subpath export
import 'boodoo/css';

// Or direct file path
import 'boodoo/dist/css/boodoo.min.css';

Compile from Sass

For full control, import the Sass entry in your own stylesheet. Override boodoo's variables before the import to customize everything:

// Your custom overrides (optional)
$boodoo-primary: #7C3AED;
$boodoo-border-radius: 0.375rem;

// Then import boodoo
@import "node_modules/boodoo/scss/boodoo";

Package exports

The package exposes standard entry points and subpath exports via package.json:

{
  "style": "dist/css/boodoo.css",
  "sass": "scss/boodoo.scss",
  "main": "dist/js/boodoo.js",
  "module": "dist/js/boodoo.esm.js",
  "exports": {
    ".": {
      "import": "./dist/js/boodoo.esm.js",
      "require": "./dist/js/boodoo.js"
    },
    "./css": "./dist/css/boodoo.min.css",
    "./tokens": "./tokens/index.js",
    "./tokens.json": "./tokens/tokens.json",
    "./paper": "./react-native/paper.js",
    "./react-native": "./react-native/index.js"
  }
}

Desktop & Electron Usage

In Electron or hybrid desktop projects, install boodoo via npm and reference it directly in your renderer HTML (node_modules/boodoo/dist/css/boodoo.min.css) or import it inside your bundler entry point (Vite, Webpack, Electron Forge). See our Electron Desktop guide for complete setup and frameless window controls.