v1.0 — Zero Dependencies — ~6KB gzipped — MIT License
100% Open Source

Keyboard-first navigation
for the modern web

Add a beautiful, accessible command palette to any web app in minutes. Fuzzy search, keyboard navigation, nested commands, theming — all built-in.

Try it now

K

or

Everything you need, nothing you don't

Built for developers who care about UX. Every feature is designed to enhance productivity without adding complexity.

🔍

Fuzzy Search

Smart matching that finds commands even with typos. Scores results by relevance and highlights matched characters.

⌨️

Keyboard First

Navigate with arrow keys, select with Enter, close with Escape. Full keyboard accessibility out of the box.

📂

Nested Commands

Organize commands into hierarchies with drill-down navigation. Breadcrumb trail shows current location.

🎨

Themeable

Light, dark, or system preference. Customize every aspect with CSS variables to match your brand.

Accessible

Full ARIA support, focus trapping, screen reader announcements. WCAG 2.1 compliant.

Async Ready

Load commands dynamically from an API. Built-in loading states and error handling.

Up and running in 3 steps

No complex configuration. Just install, initialize, and go.

1

Install

Add the package via npm or include from CDN. Zero dependencies means fast installs.

2

Configure

Define your commands with labels, icons, shortcuts, and actions. Group them however you like.

3

Launch

Press ⌘K and start navigating. Your users will thank you for the productivity boost.

Clean, chainable API

Get started in under a minute. The API is intuitive and well-documented, so you spend less time reading docs and more time shipping.

app.js
import { BWCommandPalette } from '@bw-ui/command-palette';
import '@bw-ui/command-palette/css';

const cmd = new BWCommandPalette({
  trigger: 'mod+k',
  placeholder: 'Type a command...',
  commands: [
    {
      id: 'new-file',
      label: 'New File',
      icon: '📄',
      shortcut: 'mod+n',
      action: () => createFile()
    },
    {
      id: 'settings',
      label: 'Settings',
      icon: '⚙️',
      children: [
        { id: 'theme', label: 'Theme', ... },
        { id: 'account', label: 'Account', ... }
      ]
    }
  ]
});

Matches your design system

Built-in light and dark themes, plus full CSS variable customization for seamless integration with your brand.

Light Theme
Clean and minimal for bright environments
Dark Theme
Easy on the eyes for late-night coding
~6KB
Gzipped Size
0
Dependencies
MIT
Open Source License
A+
Accessibility Score

Start building in seconds

Install via npm for production builds, or use the CDN for quick prototyping.

npm
$ npm install @bw-ui/command-palette
CDN
< script src="unpkg.com/@bw-ui/command-palette"

Ready to boost productivity?

Join developers who ship faster with keyboard-first navigation.

Star on GitHub ⭐
Copied to clipboard!