Skip to content

Web UI enhancements: live search, analytics dashboard, connection pooling#19

Merged
Joxx0r merged 2 commits intomainfrom
feature/web-ui-enhancements
Feb 8, 2026
Merged

Web UI enhancements: live search, analytics dashboard, connection pooling#19
Joxx0r merged 2 commits intomainfrom
feature/web-ui-enhancements

Conversation

@Joxx0r
Copy link
Collaborator

@Joxx0r Joxx0r commented Feb 8, 2026

Summary

  • Live search with debounce: 300ms debounce on input, AbortController cancels in-flight requests when user types again, loading indicator during fetch
  • Keyboard navigation: / to focus search, Up/Down to navigate results with visual selection, Enter on result to open in VS Code
  • Analytics dashboard: New /analytics.html page showing service health, query volume by endpoint, average latency with color-coded bars, and top 10 slowest queries table
  • Zoekt connection pooling: undici Agent with keepAlive and 10 connections passed as dispatcher to all Zoekt fetch calls

Closes #18

Test plan

  • Open / and verify live search triggers after typing stops (300ms)
  • Type rapidly and verify only the final query executes (previous requests cancelled)
  • Press / from results to refocus search, use Up/Down to navigate, Enter to open
  • Open /analytics.html and verify health + query stats load
  • Verify connection pooling works by checking Zoekt search still returns results

🤖 Generated with Claude Code

… pooling

- Live search with 300ms debounce and AbortController for cancelling in-flight requests
- Keyboard navigation: / to focus, Up/Down to navigate results, Enter to open in VS Code
- Analytics dashboard at /analytics.html showing query stats, latency, and slowest queries
- Zoekt HTTP connection pooling via undici Agent with keep-alive and 10 connections

Closes #18

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions
Copy link

github-actions bot commented Feb 8, 2026

@claude Please review this PR. Focus on:

  • Code quality and potential bugs
  • Security issues
  • Test coverage
  • Documentation completeness

Use the opus model for thorough analysis.

Unit tests (18): ZoektClient connection pooling, query building, response
mapping, regex detection, language inference, result ranking.

Integration tests (24): Static file content validation (debounce, keyboard
nav, loading indicator, analytics dashboard), live search endpoint (concurrent
requests, AbortController cancellation, filters, context lines, assets),
analytics endpoints (summary, raw queries, method/duration filters), health
endpoint structure, result format for keyboard navigation.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Joxx0r Joxx0r merged commit 2add8cc into main Feb 8, 2026
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.

Web UI enhancements: live search, analytics dashboard, and connection pooling

1 participant