Skip to content

feat: ⌘K command palette - #21

Merged
arcabotai merged 1 commit into
mainfrom
feat/command-palette
Jun 25, 2026
Merged

arcabotai merged 1 commit into
mainfrom
feat/command-palette

Conversation

@felirami

Copy link
Copy Markdown
Collaborator

The #1 pick from the herocast feature comparison — the signature "power client" feel for a self-contained, no-backend change.

Press ⌘K (or Ctrl+K) anywhere to open a command palette:

  • Navigate to any page — the existing g-hotkeys are shown inline as hints (so it also teaches the shortcuts).
  • Actions — New cast (opens the composer), switch theme.
  • Switch account — lists your other connected accounts.
  • Search — type 2+ chars to find people and channels (via the existing /api/search-suggestions) and jump straight to them.

Implementation

  • Adds cmdk for keyboard navigation/selection, rendered inside the app's existing Headless UI Dialog shell (full Tailwind styling, dark mode, matches the other modals).
  • Mounted once in Layout, opened via react-hotkeys-hook (enableOnFormTags so ⌘K works from anywhere; preventDefault to beat the browser).
  • shouldFilter={false} with manual substring filtering so the static commands and async search results coexist cleanly; initialFocus on the input.
  • No backend changes — reuses existing routes, the compose provider, switchAccount, and next-themes.

Verification

  • npm run typecheck ✅, npm run build ✅ (138 routes).
  • Interactive feature — the ⌘K open + keyboard nav + search will be confirmed on the live deploy.

A keyboard-first command palette (the signature herocast power-user feature),
from the herocast feature comparison. Press ⌘K / Ctrl+K anywhere to:
- navigate to any page (existing g-hotkeys shown inline as hints)
- start a new cast, switch accounts, toggle theme
- search people + channels (via /api/search-suggestions) and jump to them

Built on cmdk for keyboard nav/selection inside the app's Headless UI Dialog
shell; mounted once in Layout. shouldFilter=false with manual substring filtering
so the static commands and async search results coexist. No backend changes.

Verified: typecheck + build green.
@vercel

vercel Bot commented Jun 25, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
castora Ready Ready Preview, Comment Jun 25, 2026 1:10am

@arcabotai
arcabotai merged commit 83ac206 into main Jun 25, 2026
6 checks passed

This branch was successfully deployed

1 active deployment
Preview — 18d1575c Deployed Jun 25, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants