Overview
SearchThing is a local-first document search tool that runs entirely in the browser. Upload PDFs, markdown, or plain text files, and search across them using natural language semantic search powered by on-device AI embeddings via Hugging Face Transformers.js.
Features
- Semantic Search: Natural language queries using local AI embeddings (no API calls)
- BM25 + Vector Hybrid: Combines keyword and semantic search with reciprocal rank fusion
- Document Management: Upload, store, and browse PDFs, markdown, and text files
- In-Browser Processing: All embedding and search happens on-device using Web Workers
- Embedding Cache: Smart caching avoids re-embedding unchanged document chunks
- Reader View: Built-in document reader with chunk highlighting for search results
- Mobile Responsive: Adaptive layout with mobile navigation
- Drag & Drop: Drop files anywhere to upload
Technology Stack
- TypeScript
- React
- Bun (server and bundler)
- Hugging Face Transformers.js (local embeddings)
- shadcn/ui + Tailwind CSS
- Comlink (Web Worker communication)