docsguidesLocal-first and privacy
#Local-first and privacy
MDReader reads files that stay on your machine.
#Your files are the source of truth
Indexing, search, and reading do not modify your Markdown. The editor writes a change only after you explicitly save it. The private CatDB index is derived data; it does not replace your Markdown or require a format migration.
#The private index lives under app data
To make search and the outline fast, CatDB builds an index — an SQLite database stored in MDReader's app data directory, in a private location derived from the library path. It records where headings, sections, and terms are, so a query can jump you to the right lines. Delete it and MDReader rebuilds it from your Markdown; the source Markdown remains unchanged.
#Model download and local search
The desktop indexing and search path does not upload source Markdown. The first indexing run may download bge-small-en-v1.5 through FastEmbed into its local model cache. Once that model is ready, embeddings and hybrid search run locally.
If the model cannot load, the library still opens and text search remains available. Indexing and semantic ranking resume after the model loads. The current desktop app does not expose an embedding provider or location setting.
The hosted viewer on this site uses a small in-browser fixture. It is separate from the desktop model-download and indexing path.