Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/emersion/hydroxide
A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge
https://github.com/emersion/hydroxide
carddav imap mail protonmail smtp
Last synced: 4 days ago
JSON representation
A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge
- Host: GitHub
- URL: https://github.com/emersion/hydroxide
- Owner: emersion
- License: mit
- Created: 2017-08-21T15:33:40.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-06-29T19:48:36.000Z (7 months ago)
- Last Synced: 2025-01-20T03:54:11.696Z (6 days ago)
- Topics: carddav, imap, mail, protonmail, smtp
- Language: Go
- Homepage:
- Size: 424 KB
- Stars: 1,692
- Watchers: 43
- Forks: 126
- Open Issues: 88
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/emersion/hydroxide - ProtonMail bridge (Jump To / Mail)
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/emersion/hydroxide - ProtonMail bridge (Jump To / Mail)
- awesome - emersion/hydroxide - A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge (Go)
- awesome-repositories - emersion/hydroxide - A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge (Go)
- stars - emersion/hydroxide - A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge (Go)
- awesome-starred - emersion/hydroxide - A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge (Go)
- awesome-starred - emersion/hydroxide - A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge (Go)
- stars - hydroxide - party, open-source ProtonMail CardDAV, IMAP and SMTP bridge | emersion | 1695 | (Go)
- stars - hydroxide - party, open-source ProtonMail CardDAV, IMAP and SMTP bridge | emersion | 1654 | (Go)
README
# hydroxide
A third-party, open-source ProtonMail bridge. For power users only, designed to
run on a server.hydroxide supports CardDAV, IMAP and SMTP.
Rationale:
* No GUI, only a CLI (so it runs in headless environments)
* Standard-compliant (we don't care about Microsoft Outlook)
* Fully open-sourceFeel free to join the IRC channel: #emersion on Libera Chat.
## How does it work?
hydroxide is a server that translates standard protocols (SMTP, IMAP, CardDAV)
into ProtonMail API requests. It allows you to use your preferred e-mail clients
and `git-send-email` with ProtonMail.+-----------------+ +-------------+ ProtonMail +--------------+
| | IMAP, SMTP | | API | |
| E-mail client <-------------> hydroxide <--------------> ProtonMail |
| | | | | |
+-----------------+ +-------------+ +--------------+## Setup
### Go
hydroxide is implemented in Go. Head to [Go website](https://golang.org) for
setup information.### Installing
Start by installing hydroxide:
```shell
git clone https://github.com/emersion/hydroxide.git
go build ./cmd/hydroxide
```Then you'll need to login to ProtonMail via hydroxide, so that hydroxide can
retrieve e-mails from ProtonMail. You can do so with this command:```shell
hydroxide auth
```Once you're logged in, a "bridge password" will be printed. Don't close your
terminal yet, as this password is not stored anywhere by hydroxide and will be
needed when configuring your e-mail client.Your ProtonMail credentials are stored on disk encrypted with this bridge
password (a 32-byte random password generated when logging in).## Usage
hydroxide can be used in multiple modes.
> Don't start hydroxide multiple times, instead you can use `hydroxide serve`.
> This requires ports 1025 (smtp), 1143 (imap), and 8080 (carddav).### SMTP
To run hydroxide as an SMTP server:
```shell
hydroxide smtp
```Once the bridge is started, you can configure your e-mail client with the
following settings:* Hostname: `localhost`
* Port: 1025
* Security: none
* Username: your ProtonMail username
* Password: the bridge password (not your ProtonMail password)### CardDAV
You must setup an HTTPS reverse proxy to forward requests to `hydroxide`.
```shell
hydroxide carddav
```Tested on GNOME (Evolution) and Android (DAVDroid).
### IMAP
⚠️ **Warning**: IMAP support is work-in-progress. Here be dragons.
For now, it only supports unencrypted local connections.
```shell
hydroxide imap
```## License
MIT