WORK-045
ID:WORK-045Status:done

Sidebar search and filter bar for plan site

Add a text input at the top of the sidebar that filters visible items in real-time. Supports plain text fuzzy matching across ID, title, tags, assignee, and milestone, plus structured field:value filter syntax matching the {% backlog %} rune.

Priority:highComplexity:moderateSource:SPEC-015
claude/file-naming-convention-LJdwR View source

Criteria completion

No incremental history — criteria tracking started on Apr 21.

Branches 3
claude/file-naming-convention-LJdwR current done
main donechangeset-release/main doneclaude/align-sidenav-styling-4MuxV done
History 2
  1. bbbb94c
    Created (done)by bjornolofandersson
  2. f2b3512
    Content editedby Claude
    Add {ID}-{slug}.md filename convention + migrate filenames subcommand

Acceptance Criteria

  • Text input appears at the top of the sidebar
  • Typing filters items by matching against ID, title, tags, assignee, milestone
  • field:value syntax works (e.g., status:ready, priority:high, tags:css)
  • Multiple filters combine with AND logic; multiple values for same field use OR
  • Escape clears the filter
  • / keyboard shortcut focuses the filter input
  • Filtering auto-expands matching groups (works with WORK-044)
  • Nav items include data-tags, data-priority, data-severity, data-assignee, data-milestone attributes

Approach

Client-side behavior (~2KB). All data is already in the DOM via data attributes on nav items (added in WORK-038). No server round-trip needed. The behavior reads data attributes and filters by toggling visibility.

References

  • SPEC-015 (Plan Site UX at Scale — Feature 2)
  • WORK-038 (nav region builder — provides data attributes)
  • WORK-044 (collapsible groups — filtering interacts with collapse state)