Add backend provider mechanism (Decouple from just IMAP)
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1k
- Forks
- 348
- Avg merge
- 12h 28m
- Merged PRs (30d)
- 91
Description
Is your feature request related to a problem? Please describe.
Lack to support for other transport protocols.
Describe the solution you'd like
What I would like to discuses with you is the possibility of, somehow integrating a backend provider mechanism in to the Mail app, where the app and transport are separate. That way one could integrate communication backends like EWS, ActiveSync, Graph, Google, IMAP, Etc.
Describe alternatives you've considered
None available.
Additional context
To give additional context, I recently created a EWS (Exchange Web Services) integration module that connects to Calendar, Contacts, and Tasks. The EWS protocol also supports Mail, but unfortunately the mail app seems to be hard coded for IMAP, so I was not able to also use EWS to also supply mail functionality. So the user has to configure settings multiple times and all the apps use different ways to communicate.
Here is a link to the EWS integration app.
https://github.com/ksainc/integration_ews
A mail provider back end would be very beneficial since I also plan on creating a module for ActiveSync and Graph, since about 80% of the EWS code is transferable to both those protocols.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files or tests are named. Start by reviewing how the Mail app currently couples mail transport to IMAP, then compare the proposed separation with the linked EWS integration module; done would require an agreed provider mechanism that can support EWS, ActiveSync, Graph, Google, and IMAP.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100