Skip to content

Kazier Documentation

Welcome to the Kazier documentation.

Kazier is a local-first Android file manager. It mirrors your device’s Storage Access Framework (SAF) into a local Room database, then pushes metadata only to your own backend — never your files.

PrincipleMeaning
Local-FirstYour data lives on your own hardware, not in a cloud that could disappear tomorrow.
Open SourceSoftware you can inspect, audit and self-host. No black boxes, no vendor lock-in.
Private by DesignEncryption and sovereignty are the defaults, not options.
Controlled syncThe server receives metadata only. Physical files stay on your device.
  1. The Android client walks your SAF folders and mirrors them into a local Room database.
  2. Mutations (create, move, delete) are recorded in a transactional outbox alongside the local change.
  3. A WorkManager worker drains the outbox to POST /sync/ops on your backend.
  4. Your backend (Go + PostgreSQL) applies the operations sequentially and stores metadata.
┌─────────────────────────────┐ outbox sync ┌────────────────────────────┐
│ Android (Kotlin + Compose) │ ───────────────────▶ │ Backend (Go + Gin) │
│ · Room database │ metadata only │ · PostgreSQL 17 │
│ · SAF file access │ │ · PASETO auth │
│ · WorkManager outbox │ │ · OCR (Tesseract) │
└─────────────────────────────┘ └────────────────────────────┘
  • Android app on Google Play (coming soon with the alpha release)
  • Source code
  • Landing page: Kazier