Search
Sensemaker provides full-text search across your entire library using PostgreSQL's built-in text search engine.
What's Searchable
Search queries match against:
- Title — Article or document title
- Author — Author name
- Description — Article summary or description
- Content — The full body text of saved articles
Results are ranked by relevance and returned with pagination.
Using Search
Type in the search bar at the top of the Library page. Results update as you type.
Combining Search with Filters
Search works alongside all Library filters. You can:
- Search within a specific tag
- Search only articles (exclude PDFs, podcasts, etc.)
- Search only unread or in-progress items
- Search within a specific source or newsletter
This lets you ask questions like "What did I save about transformers from that ML newsletter?" by combining a search query with a source filter and content type.
How It Works
Sensemaker uses PostgreSQL's tsvector full-text search rather than a separate search engine. This means:
- No additional infrastructure — Search runs on the same database
- Relevance ranking — Results are ordered by match quality
- Language-aware — Stemming and stop-word handling for English content
For most libraries (thousands of items), this provides fast, accurate results without the complexity of Elasticsearch or similar systems.
Architecture note: The search layer uses an adapter pattern internally, so additional search engines (e.g., Elasticsearch, Typesense) can be added in the future without changing the service layer or API contract.