this post was submitted on 20 Mar 2024
25 points (96.3% liked)

Rust

5966 readers
19 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

!performance@programming.dev

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 1 year ago
MODERATORS
 

Hey all,

I'm going to be moving on to my next project and have been thinking about doing an email client. I like Thunderbird, but the search is terrible, and I also want to tackle something that needs pretty high performance for processing emails etc.

Any suggestions or considerations I should think about?

I'll focus on just getting SMTP going in a CLI then I'll introduce some sort of frontend using Qt.

you are viewing a single comment's thread
view the rest of the comments
[–] Matty_r@programming.dev 5 points 7 months ago* (last edited 7 months ago) (1 children)

No offense taken. But I've made no assumptions on the simplicity, and I know its a big task and want to start small. I don't mean to compete with Thunderbird, just I like it.

I think it would be a great exercise in learning the protocol and message handling.

[–] teotwaki@lemmy.world 3 points 7 months ago

Okay, fairy nuff.

In that case, I would probably start with writing an SMTP or IMAP proxy first. It will teach you everything you need to know about the protocols, and you can reverse engineer the protocols using a client that already works.

It would give you a tangible project outline, which I believe is often critical to not lose motivation or interest.

If you accept using libraries, there’s the imap crate, the mail_send crate, and samotoo crate that are worth looking at.