Data layer
Where CallVault keeps things — an on-device SQLite database as the source of truth, recording metadata in Supabase, and audio backups in FilesHub.
Where CallVault keeps things — an on-device SQLite database as the source of truth, recording metadata in Supabase, and audio backups in FilesHub.
CallVault builds a native Android recorder and a web dashboard from a single Flutter codebase — kept apart by keeping device-only code out of the web build.
Every recording moves through a state machine — recorded, uploaded, synced — with retry-and-backoff, a terminal blocked state, and nothing deleted before it is safely synced.