# Command Palette

> A keyboard-driven floating overlay that surfaces every action, page, and setting from a single search input — navigation without menus.

- Category: Layout-driven
- Era: 2011–present
- Origin: Sublime Text Command Palette (2011); VS Code, Linear, Raycast
- Lesson: https://design.dawit.dev/styles/command-palette
- Try it: https://design.dawit.dev/styles/command-palette?style=command-palette

## Where it came from

The command palette pattern was popularised by Sublime Text and spread to VS Code, then into product UIs via Linear, Notion, Figma, and Raycast. It replaces hierarchical menus with a single fuzzy-search field: type a fragment of what you want and the relevant actions surface. The design is deliberately minimal — a centred floating panel, a search input, a grouped list, nothing else.

## How to spot it

- Centred floating overlay, triggered by a keyboard shortcut
- Single text input accepts all commands, navigation, and search
- Result list with keyboard-only navigation (arrow keys, Enter)
- Grouped results with category labels and keyboard shortcut hints on the right

## Strengths

- Extremely fast for keyboard-first users — the fastest possible navigation
- Scales to any number of actions without adding visual clutter to the page
- Power-user favourite — Linear and Raycast built their brand around it

## Weaknesses

- Invisible to new users who do not know the shortcut exists
- Requires comprehensive, discoverable, and consistent action labelling
- Does not fully replace navigation for mouse-first users

## In the wild

- Linear command menu (⌘K)
- VS Code Command Palette (⌘⇧P)
- Raycast application launcher

## Use it when

Productivity tools and developer-facing apps where keyboard navigation and fast action discovery are the primary interactions.

## Related styles
[Terminal](https://design.dawit.dev/styles/terminal.md), [Minimalism](https://design.dawit.dev/styles/minimalism.md), [Data Dense](https://design.dawit.dev/styles/data-dense.md)
