Skip to content

haaarshsingh/kmenu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

image

kmenu

Headless, accessible, framework-agnostic command menu component.

About

This is the monorepo for kmenu, a tiny package for building fast, accessible command palettes (⌘K menus). It contains the core headless library and a React adapter, plus the main website at kmenu.dev.

Packages

  • core: kmenu — headless engine with zero runtime dependencies. See packages/core.
  • react: @kmenu/react — idiomatic React components and hooks. See packages/react.

Apps

  • web: official websiet (apps/web).

Features

  • Headless + composable: Bring your own UI
  • Accessible: WAI-ARIA compliant
  • Lightweight: < 6KB min+gzip (core)
  • Framework-agnostic: Works everywhere
  • Zero dependencies: No runtime deps in core

Install

Core only:

npm install kmenu # or pnpm add kmenu # or bun add kmenu

React adapter:

npm install kmenu @kmenu/react # or pnpm add kmenu @kmenu/react # or bun add kmenu @kmenu/react

Monorepo development

Requirements: Node >= 18.

git clone https://github.com/haaarshsingh/kmenu cd kmenu bun install # or npm install / pnpm install # develop example app and packages bun run dev # build all packages/apps bun run build # type-check, lint, and test bun run check-types bun run lint bun run test

Scripts are powered by Turborepo and run across workspaces. See package.json and turbo.json for details.

Sponsor this project

 

Contributors 7