📫 email-lib
Rust library to manage emails.
See the full API documentation on docs.rs.
The project is under active development. Do not use in production before the v1.0.0.
Development
The development environment is managed by Nix. Running nix-shell will spawn a shell with everything you need to get started with the lib: cargo, cargo-watch, rust-bin, rust-analyzer, notmuch…
# Start a Nix shell
# then build the lib
Testing
Before running the test suite you need to spawn an IMAP server. Here an example with docker and greenmail:
$ docker run -it --rm \
-p 3025:3025 -p 3110:3110 -p 3143:3143 -p 3465:3465 -p 3993:3993 -p 3995:3995 \
-e GREENMAIL_OPTS='-Dgreenmail.setup.test.all -Dgreenmail.hostname=0.0.0.0 -Dgreenmail.auth.disabled -Dgreenmail.verbose' \
greenmail/standalone:2.0.0
$ cargo test -p email-lib
Contributing
If you want to report a bug that does not exist yet, please send an email at ~soywod/pimalaya@todo.sr.ht.
If you want to propose a feature or fix a bug, please send a patch at ~soywod/pimalaya@lists.sr.ht using git send-email. Follow this guide to configure git properly.
If you just want to discuss about the project, feel free to join the Matrix workspace #pimalaya.general or contact me directly @soywod. You can also use the mailing list [send an email|subscribe|unsubscribe].
Sponsoring
Special thanks to the NLnet foundation and the European Commission that helped the project to receive financial support from:
- NGI Assure in 2022
- NGI Zero Untrust in 2023
If you appreciate the project, feel free to donate using one of the following providers:
