# Changelog

## v0.1.0

Initial release. Splint is a debt settlement tracker with end-to-end
encryption, no accounts, and a visual graph of who owes whom.

### Added

- **End-to-end encryption** — AES-256-GCM. Keys live in the URL fragment;
  the server never sees plaintext.
- **No-account sharing** — invite collaborators with a link. No sign-up,
  no passwords.
- **Debt settlement graph** — visualize who owes whom with an interactive
  dependency graph.
- **Self-hostable** — Bun + Postgres. One `docker compose up`.
- **Offline-first web client** — React SPA with Dexie.js for local
  caching. Works without a connection.
- **Containerized deployment** — Podman Compose with multi-stage builds.
- **Drizzle ORM migrations** — type-safe Postgres schema with `drizzle-kit`.

### Coming next

- Hashcash / proof-of-work challenge for ledger creation (rate limiting)
- Input validation hardening on API routes
- Integration test suite
