2026 02 11_search_filtering_plan - mark-ik/graphshell GitHub Wiki
Search And Filtering Plan (2026-02-11)
Search And Filtering Plan
- Goal: Fast, fuzzy search and optional filtering for large graphs.
- Scope: Graph UI search bar, matching, highlighting, filter mode.
- Dependencies: nucleo crate, node title/URL metadata.
- Phase 1: Search UI
- Add search field toggle (Ctrl+F) and clear (Esc).
- Display match count and active index.
- Phase 2: Matching
- Index node titles and URLs with nucleo.
- Support fuzzy scoring and exact match fallback.
- Phase 3: Highlight and filter
- Highlight matched nodes; dim non-matches.
- Optional filter to hide non-matching nodes.
- Phase 4: Navigation
- Up/Down to cycle matches; Enter focuses node.
- Validation tests
- Typo-tolerant matches ("gthub" -> github).
- 200+ nodes search remains responsive.
- Outputs
- New search module and integration hooks.
- Documentation of keybinds.
- 2026-02-11: Plan created.
- 2026-02-14: Landed FT6 implementation:
- Added graph search UI toggle (
Ctrl+F) with clear-on-Esc.
- Added fuzzy URL/title matching using
nucleo.
- Added highlight and filter mode integration in graph rendering.
- Added result navigation (
Up/Down) and active-result select (Enter).
- Added unit coverage for matcher behavior and search-state helpers.
⚠️ **GitHub.com Fallback** ⚠️