The reference-library hoarder
Textbooks, technical manuals, standards, papers. You currently Ctrl-F across dozens of open PDFs. Search your whole library by concept — and never pay.
Hierarchical document search engine
Drop files in. Search them by meaning, not just keywords. Every result links back to the exact location in the source — chapter, section, page.
Lectis · Latin, from reading and gathering.
A document search engine that respects structure. Textbooks have chapters. Manuals have sections. Specs have headings. Lectis parses that hierarchy first and chunks within it — so search results carry their breadcrumb path back to the source.
Runs locally as a free desktop application. No account, no internet, no fees. Files never leave your machine unless you choose to sync.
Textbooks, technical manuals, standards, papers. You currently Ctrl-F across dozens of open PDFs. Search your whole library by concept — and never pay.
You need a RAG pipeline. You don't want to stitch together LangChain, a vector DB, and a parsing library. Send documents in, get search results out.
Specs, SOPs, compliance docs, internal knowledge. Confluence search isn't cutting it. Semantic search scoped to your workspace.
Format-specific extractors produce raw text plus a structural tree — headings, pages, sections. PDF, Markdown, HTML, plain text. OCR for scanned PDFs.
Hierarchical chunker splits at the leaf level and generates parent summaries up the tree. Chunks respect paragraph and code-block boundaries.
Chunks go to your configured embedding provider — or run locally via ONNX. Vector dimensions lock per workspace at provisioning time.
Query in natural language. Get ranked chunks with breadcrumb paths. Expand around a hit — neighbors, parent, section, page — without a second search.
Lectis ships in phases. The core engine and the desktop app are live; the hosted service is next.
Format parsers, hierarchical chunker, embedding abstraction, vector storage (LanceDB & Qdrant), search, and a store-agnostic chunk expander. CLI included.
Native three-panel UI in Rust. Drag-and-drop ingestion, workspace management, source-document viewer with jump-to-hit, and one-click Connect to Claude for MCP integration.
REST API, async ingestion queue, Wasabi for source files, self-hosted Qdrant, per-workspace API keys, webhooks.
Desktop ↔ cloud sync, BM25 + vector hybrid retrieval, contextual retrieval, hosted dashboard.
The desktop app exposes an MCP server. Click Connect to Claude, restart Claude Desktop, and Claude operates on the same workspace as the UI — same files, same index, same instance.
Eleven tools: list and create workspaces, search, fetch a chunk, expand around a hit, ingest text or files, link a GitHub repo, sync a code workspace.
search({
workspace: "engineering-handbook",
query: "how do we handle backpressure in queues?",
top_k: 5
})
// → ranked chunks, each with:
// id, parent_id, score
// path: ["Reliability", "4.2 Queues", "4.2.3 Backpressure"]
// chunk_text, doc_title, page_range