Phase 02 · scaffolding · M0
Server holds ciphertext only.
Voter data stays yours.
Open-source self-custody canvasser app. XChaCha20-Poly1305 client-side, Shamir 3-of-5 recovery, on-device Whisper + Gemma + NLLB. AGPL-3.0. Multi-select result codes. Voter writeback. A back button that works.
Whisper · on-deviceGemma 3 1B · structurerNLLB-200 · 7 languages
Build status · M0
- ▣crypto module — blob envelope, KDF, HMAC index, passkey PRF
- ▣sync module — mutation log, Dexie schema, sync health
- ▣MCP tool registry — 17 Zod-typed tools across 3 scopes
- ▣self-custody CI check — privileged-import enforcement
- ▢Hono API skeleton — sync push/pull, blob PUT/GET
- ▢Auth.js + passkey enrollment with PRF derivation
- ▢Agent harness — Vercel AI SDK + local tool dispatch
- ▢Shamir 3-of-5 secret sharing for org master key
Need the public voter resource portal? turnout.app