~ober/jerboa-jmap
Imported from ~/mine/jerboa-jmap
about
# jjmapd — Zero-knowledge JMAP email-fetch server
A JMAP (RFC 8620) email-fetch server that stores age-encrypted email blobs.
Plaintext is never stored on disk. Decryption happens only on the client.
## Quick Start
```
jjmapd serve --config config.json
```
## Architecture
```
┌──────────┐ plaintext ┌──────────┐ encrypted ┌─────────┐
│ SMTP │ ──────────→ │ jjmapd │ ────────────→ │ SQLite │
│ server │ (maildir) │ ingest │ (age blobs) │ + FS │
└──────────┘ └──────────┘ └─────────┘
│
JMAP/TLS │ encrypted
←─────────┘ (age blobs)
│
┌───────┴───────┐
│ Android APK │
│ (decrypts │
│ on device) │
└───────────────┘
```
## Build
```
make build # Jerboa library build
make binary # produce jjmapd binary
make native-build # Rust age library
make test # run tests
make dist # distribution build
```
## Security
See `SECURITY.md`. Cryptographic operations are pure Rust, no OpenSSL.
## License
Apache 2.0
recent commits
- Document local mine repository authority 61994dd Jaime Fournier
- Use FreeBSD Forgejo CI runner 503af05 user
- Set up Forgejo CI/CD policy a40ea41 Jaime Fournier
- Add Jerboa JMAP implementation eb8fc4d Jaime Fournier
- Update jpkg metadata for Forgejo d943f79 Jaime Fournier
- base b66d3e8 Jaime Fournier