mirror of
https://github.com/wahyd4/hey-search.git
synced 2026-08-09 05:06:23 +10:00
1.8 KiB
1.8 KiB
Features
Search
- Web search — aggregates results from Brave, DuckDuckGo, Google, and Bing concurrently
- Image search — image results with a responsive grid layout and lightbox viewer
- Autocomplete — live search suggestions as you type (cascades Google → DuckDuckGo → Brave)
- URL deduplication — duplicate results from multiple engines are merged automatically
REST API
- Full REST API for search, autocomplete, and engine management
- OpenAPI specification with interactive docs via Swagger UI (
/docs) and Redoc (/redoc)
Engine Management
- 4 built-in engines: Brave, DuckDuckGo, Google, Bing
- Enable or disable engines via the UI or API at runtime
- Each engine supports both web and image search categories
Reliability
- Retry mechanism — failed upstream requests are retried with exponential backoff (via tenacity)
- Error reporting — when an upstream engine fails or times out, the UI shows a toast notification identifying which engine had issues
- Graceful degradation — partial failures don't block results from other engines
UI / UX
- Mobile-first responsive design built with React, Tailwind CSS, and shadcn theming
- Clean search home page with branded gradient header
- Web results show favicons, engine badges, and content snippets
- Image results displayed in a responsive grid with hover previews and a full lightbox
- Engine settings modal with toggle switches
- Keyboard navigation for autocomplete suggestions (↑↓ arrows, Enter, Escape)
Deployment
- Docker — multi-stage Dockerfile: Node.js frontend build → Python production image
- Backend uses uv for fast, reproducible dependency management