Project structure
Where Quarry keeps its settings, its indexes and its logs on disk.
Quarry writes to two places on disk, plus a socket file while the daemon runs. Nothing else on your system is touched, and your original source files are never modified.
Config
~/.config/quarry/
├── config.toml # settings, see the settings file page
└── quarryignore.d/ # optional shared ignore rules, Team onlyOne file, config.toml, holds every setting. See Settings file for
its full shape.
Data
~/.local/share/quarry/
├── notes/
│ ├── postings # inverted index: term to document mapping
│ ├── documents.db # document table: paths, sizes, mtimes
│ └── snippets/ # extracted text used for snippet previews
├── site-code/
│ └── ...
└── daemon.logEach index gets its own directory, named after the index. Inside, three things: a postings file, a document table and a snippet store. See Index format for what each one holds and how big they typically get.
Runtime
While quarry daemon is running, it also holds a Unix domain socket at
~/.local/share/quarry/daemon.sock, used by the CLI and the app to talk to it, and, if the
HTTP endpoint is on, a TCP listener on 127.0.0.1:7433. Neither
persists anything beyond the socket file itself, which is removed when the daemon stops.
What is never written
Quarry never writes into the folders it indexes. No cache files, no lock files, no hidden
directories inside your notes vault, aside from a .quarryignore file you create yourself.
See Include and exclude rules for that file’s syntax.
Last updated Jun 22, 2026