From c0a82ce9f4f9ff634d001b6a7dff044e2cd414d7 Mon Sep 17 00:00:00 2001 From: Eugen Kaparulin Date: Fri, 17 Apr 2026 09:08:18 +0300 Subject: [PATCH] docs(mailcore): add README explaining license and module layout --- mailcore/README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 mailcore/README.md diff --git a/mailcore/README.md b/mailcore/README.md new file mode 100644 index 0000000..1a58c01 --- /dev/null +++ b/mailcore/README.md @@ -0,0 +1,27 @@ +# mailcore + +The open-source Rust engine at the heart of [Korax](../) — a PGP-first email client. + +This library handles everything below the UI layer: IMAP, SMTP, MIME parsing, local SQLite storage, and DNS auto-discovery. It is published here for transparency and community audit. + +## What's here + +| Module | Description | +|---|---| +| `src/imap/` | RFC 3501 IMAP client, UIDVALIDITY-aware, uses `BODY.PEEK[]` to preserve `\Seen` flag integrity | +| `src/smtp/` | RFC 5321 SMTP with STARTTLS and SMTPS | +| `src/storage/` | SQLite message cache, folder state, account credentials | +| `src/mime/` | RFC 2045/2046 multipart MIME parser | +| `src/dns/` | SRV auto-discovery (`_imaps._tcp`, `_submission._tcp`) — same mechanism used by Thunderbird and Evolution | +| `src/session_manager.rs` | Shared IMAP session pool | +| `src/api.rs` | Public FFI surface (consumed via `flutter_rust_bridge`) | + +## What's not here + +PGP/Sequoia integration and advanced privacy features live in a separate proprietary crate (`mailmore`) and are not published. + +## License + +Published under the **PolyForm Noncommercial License 1.0.0** — free to read, study, and use for noncommercial purposes. See the [LICENSE](../LICENSE) file in the root of this repository. Commercial use requires a separate agreement with the author. + +© Eugen Kaparulin. All rights reserved.