{"id":13418734,"url":"https://github.com/emersion/hydroxide","last_synced_at":"2025-05-14T16:02:31.019Z","repository":{"id":39375880,"uuid":"100966856","full_name":"emersion/hydroxide","owner":"emersion","description":"A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge","archived":false,"fork":false,"pushed_at":"2025-05-05T13:07:51.000Z","size":432,"stargazers_count":1789,"open_issues_count":90,"forks_count":130,"subscribers_count":42,"default_branch":"master","last_synced_at":"2025-05-14T00:02:01.450Z","etag":null,"topics":["carddav","imap","mail","protonmail","smtp"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/emersion.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-21T15:33:40.000Z","updated_at":"2025-05-11T11:29:28.000Z","dependencies_parsed_at":"2023-11-09T12:42:59.004Z","dependency_job_id":"d58ad656-9929-4789-842c-ce8cec46d301","html_url":"https://github.com/emersion/hydroxide","commit_stats":{"total_commits":270,"total_committers":26,"mean_commits":"10.384615384615385","dds":"0.16296296296296298","last_synced_commit":"15fced74e9ff10936e548edb8d0f65bb62a22b95"},"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emersion%2Fhydroxide","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emersion%2Fhydroxide/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emersion%2Fhydroxide/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/emersion%2Fhydroxide/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/emersion","download_url":"https://codeload.github.com/emersion/hydroxide/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254179903,"owners_count":22027884,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["carddav","imap","mail","protonmail","smtp"],"created_at":"2024-07-30T22:01:06.253Z","updated_at":"2025-05-14T16:02:30.954Z","avatar_url":"https://github.com/emersion.png","language":"Go","readme":"# hydroxide\n\nA third-party, open-source ProtonMail bridge. For power users only, designed to\nrun on a server.\n\nhydroxide supports CardDAV, IMAP and SMTP.\n\nRationale:\n\n* No GUI, only a CLI (so it runs in headless environments)\n* Standard-compliant (we don't care about Microsoft Outlook)\n* Fully open-source\n\nFeel free to join the IRC channel: #emersion on Libera Chat.\n\n## How does it work?\n\nhydroxide is a server that translates standard protocols (SMTP, IMAP, CardDAV)\ninto ProtonMail API requests. It allows you to use your preferred e-mail clients\nand `git-send-email` with ProtonMail.\n\n    +-----------------+             +-------------+  ProtonMail  +--------------+\n    |                 | IMAP, SMTP  |             |     API      |              |\n    |  E-mail client  \u003c-------------\u003e  hydroxide  \u003c--------------\u003e  ProtonMail  |\n    |                 |             |             |              |              |\n    +-----------------+             +-------------+              +--------------+\n\n## Setup\n\n### Go\n\nhydroxide is implemented in Go. Head to [Go website](https://golang.org) for\nsetup information.\n\n### Installing\n\nStart by installing hydroxide:\n\n```shell\ngit clone https://github.com/emersion/hydroxide.git\ngo build ./cmd/hydroxide\n```\n\nThen you'll need to login to ProtonMail via hydroxide, so that hydroxide can\nretrieve e-mails from ProtonMail. You can do so with this command:\n\n```shell\nhydroxide auth \u003cusername\u003e\n```\n\nOnce you're logged in, a \"bridge password\" will be printed. Don't close your\nterminal yet, as this password is not stored anywhere by hydroxide and will be\nneeded when configuring your e-mail client.\n\nYour ProtonMail credentials are stored on disk encrypted with this bridge\npassword (a 32-byte random password generated when logging in).\n\n## Usage\n\nhydroxide can be used in multiple modes.\n\n\u003e Don't start hydroxide multiple times, instead you can use `hydroxide serve`.\n\u003e This requires ports 1025 (smtp), 1143 (imap), and 8080 (carddav).\n\n### SMTP\n\nTo run hydroxide as an SMTP server:\n\n```shell\nhydroxide smtp\n```\n\nOnce the bridge is started, you can configure your e-mail client with the\nfollowing settings:\n\n* Hostname: `localhost`\n* Port: 1025\n* Security: none\n* Username: your ProtonMail username\n* Password: the bridge password (not your ProtonMail password)\n\n### CardDAV\n\nYou must setup an HTTPS reverse proxy to forward requests to `hydroxide`.\n\n```shell\nhydroxide carddav\n```\n\nTested on GNOME (Evolution) and Android (DAVDroid).\n\n### IMAP\n\n⚠️  **Warning**: IMAP support is work-in-progress. Here be dragons.\n\nFor now, it only supports unencrypted local connections.\n\n```shell\nhydroxide imap\n```\n\n## License\n\nMIT\n","funding_links":[],"categories":["Go","Mail"],"sub_categories":["Other"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femersion%2Fhydroxide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Femersion%2Fhydroxide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Femersion%2Fhydroxide/lists"}