ideas icon indicating copy to clipboard operation
ideas copied to clipboard

IMAP, SMTP <-> REST, GraphQL, WebSocket, OAuth email proxy/gateway

Open KOLANICH opened this issue 2 years ago • 3 comments

Project description

Several non-major email providers (the ones for which phone verification is not required) charge for the ability to use IMAP and SMTP, the same time having Web GUI, API and free mobile apps available free of charge.

One can imagine a daemon/service accepting connections via IMAP and SMTP and translating them into service-specific API calls, this way allowing any app supporting the protocols to interoperate to the services free of charge.

The daemon consists of the following components

  1. a shared library and headers containing abstractions
  2. a shared library implementing the middleware
  3. plugin shared libraries for each service
  4. a daemon binary giving access to functionality of middleware shared library via CLI and/or Windows interface for services
  5. a set of registry files, systemd units and configs to register the service in a system properly
  6. an Android app

Relevant Technology

  • IMAP server impls
  • SMTP server impls
  • email clients impls
  • email service specifics

Complexity and required time

Complexity

  • [x] Intermediate - The user should have some prior knowledge of the technolog(y|ies) to the point where they know how to use it, but not necessarily all the nooks and crannies of the technology

Required time (ETA)

  • [x] Much work - The project will take more than a couple of weeks and serious planning is required

Categories

  • [x] Mobile app
  • [x] Frontend/UI
  • [x] APIs/Backend
  • [x] Extension/Plugin/Add-On
  • [x] Bots

KOLANICH avatar Jan 03 '23 09:01 KOLANICH

something fun to look at is davmail which is a IMAP/Exchange gateway which is much harder

Kreijstal avatar Mar 23 '24 18:03 Kreijstal

Related : emersion/hydroxide, a third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge.

KaKi87 avatar Mar 24 '24 04:03 KaKi87

Something like this: SMTP2HTTP?

it accepts smtp and forwards it as a json payload to a webhook you specify.

alash3al avatar Aug 19 '24 08:08 alash3al