Skip to main content

Vaultkeep is a local-first document engine for the Hearth ecosystem. It stores files, indexes metadata, verifies SHA-256 integrity, and versions documents. No UI, no cloud storage, no auth, no business logic.

It links to Ember records via linked_record_id without depending on Ember internals. Source: github.com/sarweshsoman/Vaultkeep.

What it does

  • Writes files under vault/documents/{circle_id}/{linked_record_id}/{document_id}/
  • SQLite metadata index (filename, MIME, size, checksum, version lineage)
  • Never overwrites: a change is a new version with a parent id
  • Optional encryption hooks (not implemented by default)
  • HTTP API for upload, metadata, content, linked lists, and new versions

How to run

Published on PyPI as vaultkeep (Python 3.12+).

pip install vaultkeep

Or with uv:

uv add vaultkeep
uv run vaultkeep

From source:

git clone https://github.com/sarweshsoman/Vaultkeep.git
cd Vaultkeep
uv sync --all-extras
uv run vaultkeep

POST /api/v1/documents/upload ingests a file; GET /api/v1/documents/{id}/content returns bytes after checksum verify.