PROJECT CASE STUDY
02 / 03
mem.
Find files by what you remember, not what they’re named.
BUILT WITH
SYSTEM OVERVIEW
THE CHALLENGE
People remember what a file said, not what it was called.
A filename like “l.pdf” gives little help when someone remembers only that the document discussed Linux process scheduling. mem indexes local document text and lets the search explain how it interpreted the request.
01 / INDEXING
Keep the source text and search index in sync.
The scanner extracts text from PDFs and common office formats, then stores searchable terms in SQLite FTS5. The index is external-content: it stores the inverted word index rather than a second copy of each document. SQL triggers keep it synchronized with the source rows.
Incremental scans skip files whose size and modification time have not changed. In the documented 46-file sample, a second scan took 4 ms compared with 800 ms for the first.
02 / QUERYING
Turn natural phrasing into explicit constraints.
Before SQLite sees a query, mem removes stop words, extracts file-type and date hints, and lightly singularizes terms. The interface shows the parsed keywords and constraints so people can correct a mistaken interpretation.
Results use BM25 with stronger weighting for filename matches. The displayed confidence is rank-normalized relative to the current results because BM25 scores do not have a meaningful absolute percentage scale.
03 / TRUST
An honest miss beats a confident wrong answer.
When nothing matches, mem reports the miss and the constraints that excluded possible files. It does not fill the page with unrelated recent documents. This keeps the result list useful even when the search fails.
OCR is optional and uses Tesseract when installed. A quality gate rejects noisy output; the tool targets printed text and does not identify what an image depicts or reliably read handwriting.
OUTCOMES
What the build demonstrates
Second scan of a documented 46-file sample
No network service or LLM required for search
Organize plans do not write unless explicitly applied
VALIDATION & SCOPE
What’s verified, and what remains.
- Search, indexing, query parsing, ranking, OCR quality gating, and terminal UI behavior are covered by the project’s documented tests.
- OCR depends on optional Tesseract. Scanned PDFs are not covered by the extraction pipeline.
- Search is deterministic full-text retrieval; it does not understand image subjects or use an LLM.