Repolode
karatektus

karatektus/pl_mail

Self-hosted mail client that syncs IMAP, Gmail and Outlook accounts into one inbox with a calendar beside it, stored in your own PostgreSQL.

Open-source alternative to:GmailMicrosoft Outlook

Stars
557
Forks
46
Open issues
49
Last commit
6 hours ago

What is it?

plMail is a mail client you host yourself. It connects to existing IMAP, Gmail and Outlook mailboxes, syncs them into your own PostgreSQL database, and shows them in one browser inbox with a shared search box and labels. It does not receive mail from the internet or host a domain, so it works alongside your current mail provider rather than replacing the server.

Because mail is synced locally, search runs against your database and messages stay readable when a provider is unavailable. New mail arrives through IMAP IDLE, Gmail and Outlook push, and includes a calendar with two-way sync for Google, Microsoft and CalDAV. Filters, threaded conversations and an optional language model for semantic search, drafting and summaries are included, with the model off by default.

The project is built with Symfony, FrankenPHP and Hotwire Turbo, and runs with Docker Compose. Mobile clients for Android and iOS connect to your own server.

Key features

  • 01Connects IMAP, Gmail and Outlook accounts into one inbox with threaded conversations.
  • 02Syncs mail into your own PostgreSQL database, so search runs locally.
  • 03Receives new mail in real time via IMAP IDLE and provider push.
  • 04Two-way calendar sync with Google, Microsoft and CalDAV.
  • 05Filter rules that can be previewed against existing mail before saving.
  • 06Optional language model features for semantic search, reply drafting and summaries.

Use cases

  • Reading several existing mailboxes side by side without giving one provider all your mail.
  • Keeping a searchable local copy of mail on a home server or NAS.
  • Running a private mail client with calendar on your own network.

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/karatektus/pl_mail.git
  2. 2

    Enter the project folder

    cd pl_mail
  3. 3

    Start the stack with Docker Compose

    docker compose up -d
  4. 4

    Open https://localhost in a browser and create your account

Things to know

  • Not a mail server: it cannot receive mail from the internet or host your domain.
  • Gmail and Outlook require OAuth credentials from Google or Microsoft before they can be connected.
  • Requires PostgreSQL and PHP 8.4+ infrastructure to self-host, with a self-signed certificate warning on first access.
  • Losing the generated secrets file makes stored mailbox passwords unrecoverable.

In collections

Topics

FAQ

What is pl_mail?
Self-hosted mail client that syncs IMAP, Gmail and Outlook accounts into one inbox with a calendar beside it, stored in your own PostgreSQL. plMail is a mail client you host yourself. It connects to existing IMAP, Gmail and Outlook mailboxes, syncs them into your own PostgreSQL database, and shows them in one browser inbox with a shared search box and labels. It does not receive mail from the internet or host a domain, so it works alongside your current mail provider rather than replacing the server.
Is pl_mail free to use? What license does it have?
pl_mail is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
Is pl_mail still maintained?
Actively maintained. The last commit to pl_mail was on Nov 6, 2026.
What can I use pl_mail for?
Reading several existing mailboxes side by side without giving one provider all your mail. Keeping a searchable local copy of mail on a home server or NAS. Running a private mail client with calendar on your own network.
How do I install pl_mail?
Clone the repository: git clone https://github.com/karatektus/pl_mail.git Enter the project folder: cd pl_mail Start the stack with Docker Compose: docker compose up -d Open https://localhost in a browser and create your account
Where can I get pl_mail?
The source code and installation instructions are on GitHub: https://github.com/karatektus/pl_mail

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects