[FEATURE] Email client integration

Open
#212 5 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Quiet
Tech stack
rust
Domain
backend

Research direction

The issue describes two possible approaches: a Bichon API extension or an IMAP server, potentially integrated with exim or dovecot. Start by reading the project's API and mail storage entry points to assess how archived messages are searched and retrieved. Done would mean choosing and implementing an integration that lets users access archived messages from an email client; the issue does not specify which approach to take.

Written by the indexing model from the issue text.

Description

enhancement
Description

I had an interesting talk with a client of mine. So; they have many GBs of emails that make any email client sweat. They obviously need archiving, but 365/exchange is over their budget and all other archiving solutions lack one key feature: Email Client Integration.

Purpose / Use Case

Having to forward a 3-year-old message that only exists in the archive with the current setup means:

  1. Search in Bichon
  2. Download the eml
  3. Open in with the email client and go from there

That's not how people want to work.

Additional Information (optional)
Solution 1: Native Extension

An extension that utilizes the Bichon API to search and restore (a.k.a. download) specific messages.

Solution 2: Bichon IMAP Server

An IMAP client can be configured to only download message headers, thus only the opened messages are downloaded on the client. Really close to how archiving works on MS Exchange.

For this to work though it would take a custom IMAP server implementation for connecting / searching / getting messages, or an integration with exim/dovecot.

Also, we would need a custom email addresses so that it won't conflict with the live one (e.g. user_domain@bichon)

P.S. If Solution 2 is out of the question I could start working on a Thunderbird extension, perhaps a Roundcube plugin as well.

Dominant language
Rust
Stars
2.1k
Forks
91
Avg merge
14h 54m
Merged PRs (30d)
6

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from rustmailer/bichon

All issues in rustmailer/bichon

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.