Developers — building on email8
The single-repo story
Clone any email8 service and build — the platform SDK and the
email8 SDK arrive as pinned git dependencies; committed .sqlx
caches mean no live database is needed to compile:
git clone https://github.com/Email8-dev/email8-mta.git
cd email8-mta
cargo build
cargo test # offline
The vertical lifecycle
make infra-up # platform TLS-only PG 18 + Valkey
sentin8-cli db bootstrap
vertical init # creates the email8 database + schemas
vertical enroll # registers services, scopes, admin UIs, triggers
make start # captain spawns the fleet
No migration code exists — greenfield: schema changes rewrite the
init SQL and re-run vertical init.
Integration surface
- Rust: the
email8-sdkshared plane (IMAP/SMTP/ical protocols, event contracts) — see the SDK page - JMAP clients: the authenticated API on Store — the modern client surface
- Standard protocols: IMAP/POP3/Sieve/CalDAV through Gate
- Events:
email8:{service}:{resource}:{operation}over Sentin8:Bus
Deep dive
Every service's full docs live in its reference section — harvested from the public repositories at build time.