Image 1 — Matcha v1.0.0-rc1
Image 2 — Matcha v1.0.0-rc1
▲ 26 r/tui

Matcha v1.0.0-rc1

Matcha is a terminal email client written in Go, built on Bubble Tea. After 40+ releases on the v0.x line, the first release candidate for v1.0.0 is out.

PGP encryption

Matcha can now encrypt and decrypt mail with PGP. A few details worth mentioning:

  • Recipient keys are looked up automatically via WKD, so you usually don't need to import public keys by hand.
  • It works with gpg-agent, so it fits into an existing GnuPG setup instead of managing keys its own way.

gitmail

If you use git format-patch / git send-email, Matcha can now apply a patch email directly to a local checkout. Patches are parsed and applied transactionally, confined to the target directory, without shelling out to git. This is an initial version, but if you follow patch-based mailing lists it's already useful.

Usability

Terminal mail clients tend to have a steep learning curve, and a lot of this release goes at that problem:

  • Mouse support
  • A command palette: one keybind, fuzzy-search every action, no need to memorize the keymap first
  • A setup guide on first run that walks through features, mailto handling, and mouse setup
  • Horizontal split-pane view, and the original message stays visible while you write a reply
  • A grace period on delete/archive/move, so there's a window to undo before anything happens
  • Jump to folder, a contact manager, and a macOS menu bar helper for notifications

Composer and rendering

  • CC/BCC fields in the composer
  • Emoji picker
  • Syntax highlighting for code blocks in emails
  • More HTML tags supported, with a cap on image rendering so large messages don't break the terminal
  • Emails can be exported as HTML or Markdown

Plugins

The plugin system now has a proper marketplace, browsable in the TUI or on the web, with 35+ community plugins. Themes can be installed from the CLI and browsed from web, and plugins can now customize the UI itself. Submitting a plugin is one form away!

Providers

This release adds separate SMTP and IMAP logins.

Fixes

  • Attachments no longer get dropped when sending
  • Fixed the Gmail "555" error on send
  • Fetching retries on flaky connections
  • Better error messages
  • Folder unread counters update correctly

Prebuilt binaries for Linux, macOS, and Windows (amd64 + arm64) are on the release page.

u/andrinoff — 3 days ago

[OC] Matcha v1.0.0-rc1 release

https://github.com/floatpane/matcha/releases/tag/v1.0.0-rc1

Matcha is a terminal email client written in Go, built on Bubble Tea. After 40+ releases on the v0.x line, the first release candidate for v1.0.0 is out.

PGP encryption

Matcha can now encrypt and decrypt mail with PGP. A few details worth mentioning:

  • Recipient keys are looked up automatically via WKD, so you usually don't need to import public keys by hand.
  • It works with gpg-agent, so it fits into an existing GnuPG setup instead of managing keys its own way.

gitmail

If you use git format-patch / git send-email, Matcha can now apply a patch email directly to a local checkout. Patches are parsed and applied transactionally, confined to the target directory, without shelling out to git. This is an initial version, but if you follow patch-based mailing lists it's already useful.

Usability

Terminal mail clients tend to have a steep learning curve, and a lot of this release goes at that problem:

  • Mouse support
  • A command palette: one keybind, fuzzy-search every action, no need to memorize the keymap first
  • A setup guide on first run that walks through features, mailto handling, and mouse setup
  • Horizontal split-pane view, and the original message stays visible while you write a reply
  • A grace period on delete/archive/move, so there's a window to undo before anything happens
  • Jump to folder, a contact manager, and a macOS menu bar helper for notifications

Composer and rendering

  • CC/BCC fields in the composer
  • Emoji picker
  • Syntax highlighting for code blocks in emails
  • More HTML tags supported, with a cap on image rendering so large messages don't break the terminal
  • Emails can be exported as HTML or Markdown

Plugins

The plugin system now has a proper marketplace, browsable in the TUI or on the web, with 35+ community plugins. Themes can be installed from the CLI and browsed from web, and plugins can now customize the UI itself. Submitting a plugin is one form away!

Providers

This release adds separate SMTP and IMAP logins.

Fixes

  • Attachments no longer get dropped when sending
  • Fixed the Gmail "555" error on send
  • Fetching retries on flaky connections
  • Better error messages
  • Folder unread counters update correctly

Prebuilt binaries for Linux, macOS, and Windows (amd64 + arm64) are on the release page.

u/andrinoff — 3 days ago
▲ 6 r/golang

Matcha v1.0.0-rc1

Matcha is a terminal email client written in Go, built on Bubble Tea. After 40+ releases on the v0.x line, the first release candidate for v1.0.0 is out.

PGP encryption

Matcha can now encrypt and decrypt mail with PGP. A few details worth mentioning:

  • Recipient keys are looked up automatically via WKD, so you usually don't need to import public keys by hand.
  • It works with gpg-agent, so it fits into an existing GnuPG setup instead of managing keys its own way.

gitmail

If you use git format-patch / git send-email, Matcha can now apply a patch email directly to a local checkout. Patches are parsed and applied transactionally, confined to the target directory, without shelling out to git. This is an initial version, but if you follow patch-based mailing lists it's already useful.

Usability

Terminal mail clients tend to have a steep learning curve, and a lot of this release goes at that problem:

  • Mouse support
  • A command palette: one keybind, fuzzy-search every action, no need to memorize the keymap first
  • A setup guide on first run that walks through features, mailto handling, and mouse setup
  • Horizontal split-pane view, and the original message stays visible while you write a reply
  • A grace period on delete/archive/move, so there's a window to undo before anything happens
  • Jump to folder, a contact manager, and a macOS menu bar helper for notifications

Composer and rendering

  • CC/BCC fields in the composer
  • Emoji picker
  • Syntax highlighting for code blocks in emails
  • More HTML tags supported, with a cap on image rendering so large messages don't break the terminal
  • Emails can be exported as HTML or Markdown

Plugins

The plugin system now has a proper marketplace, browsable in the TUI or on the web, with 35+ community plugins. Themes can be installed from the CLI and browsed from web, and plugins can now customize the UI itself. Submitting a plugin is one form away!

Providers

This release adds separate SMTP and IMAP logins.

Fixes

  • Attachments no longer get dropped when sending
  • Fixed the Gmail "555" error on send
  • Fetching retries on flaky connections
  • Better error messages
  • Folder unread counters update correctly

Prebuilt binaries for Linux, macOS, and Windows (amd64 + arm64) are on the release page.

github.com
u/andrinoff — 3 days ago
▲ 17 r/CLI

Power TUI email client

Hey everyone, I wanted to share a project called Matcha. It is a powerful terminal email client built with Go and the Bubble Tea framework. The goal of Matcha is to bring a beautiful and easy-to-use modern email experience directly to your command line. We are currently in active development for our major v1 release, which will introduce a lot of exciting new features, though you will be able to try it out when the repo hits 1000 stars. Matcha supports managing multiple accounts, composing emails in Markdown, and even viewing images and hyperlinks right in the terminal. It also has a built-in Lua plugin system with over 35 community plugins in our marketplace, plus AI integration for rewriting drafts or letting AI agents send emails on your behalf. We also take security very seriously and have a dedicated policy to ensure the client stays safe and reliable. If you are looking for a fast, feature-rich TUI email client, I would love for you to check it out on our GitHub.

Repo: https://github.com/floatpane/matcha
Docs: https://docs.matcha.email
Discord: https://discord.gg/RxNrJgfatk

u/andrinoff — 12 days ago

Powerful terminal email client

Hey everyone, I wanted to share a project called Matcha. It is a powerful terminal email client built with Go and the Bubble Tea framework. The goal of Matcha is to bring a beautiful and easy-to-use modern email experience directly to your command line. We are currently in active development for our major v1 release, which will introduce a lot of exciting new features, though you can try out our nightly builds today. Matcha supports managing multiple accounts, composing emails in Markdown, and even viewing images and hyperlinks right in the terminal. It also has a built-in Lua plugin system with over 35 community plugins in our marketplace, plus AI integration for rewriting drafts or letting AI agents send emails on your behalf. We also take security very seriously and have a dedicated policy to ensure the client stays safe and reliable. If you are looking for a fast, feature-rich TUI email client, I would love for you to check it out on our GitHub.

Repo: https://github.com/floatpane/matcha
Docs: https://docs.matcha.email
Discord: https://discord.gg/RxNrJgfatk

u/andrinoff — 14 days ago
▲ 49 r/coolgithubprojects+4 crossposts

Matcha, modern feature-rich client in your terminal

I wanted to share a project I have been working on called Matcha. It is an open-source email client built with Go that brings a modern interface to the terminal. While web and desktop clients are common, a terminal user interface or TUI offers a distraction-free environment that integrates perfectly into a developer workflow. People really seem to value the speed and the fact that you never have to take your hands off the home row to manage your inbox.

While built with mainly Go, we do include very fast C code for calculation and rendering.

Security is a major pillar of this project. Matcha supports full-disk encryption for all local data, including your config, email cache, contacts, and drafts. This is done using AES-256-GCM with keys derived via Argon2id. One of the most important aspects is that your password is never stored on disk or in any keyring; it exists only in memory for your session. Beyond local data, we have deep PGP integration. You can sign and encrypt emails using file-based keys or even a YubiKey, and the client automatically verifies signatures on incoming mail.

Customization is another area where Matcha stands out. Every single keyboard shortcut can be remapped via a JSON configuration file, allowing you to create a setup that feels like Vim, Emacs, or anything else you prefer. We also built a powerful Lua-based plugin system. There is already a marketplace with over 35 community plugins for things like AI rewriting, unread counters, and custom status bars. If you want to extend the client, you can write your own scripts to react to events like receiving or sending mail.

The client also includes modern features you might not expect in a terminal, such as smart image rendering and hyperlink support. For those interested in automation, there is a dedicated CLI mode for sending emails that works great with shell scripts. If you are a terminal enthusiast looking for a way to handle your email without leaving your environment, I would love for you to check it out on GitHub.

Repo: https://github.com/floatpane/matcha
Documentation: https://docs.matcha.email
Discord server: discord.gg/RxNrJgfatk

u/andrinoff — 15 days ago
▲ 36 r/coolgithubprojects+1 crossposts

Matcha: A Modern Feature-Rich Email Client for Your Terminal

I wanted to share a project I have been working on called Matcha. It is an open-source email client built with Go that brings a modern interface to the terminal. While web and desktop clients are common, a terminal user interface or TUI offers a distraction-free environment that integrates perfectly into a developer workflow. People really seem to value the speed and the fact that you never have to take your hands off the home row to manage your inbox.

While built with mainly Go, we do include very fast C code for calculation and rendering.

Security is a major pillar of this project. Matcha supports full-disk encryption for all local data, including your config, email cache, contacts, and drafts. This is done using AES-256-GCM with keys derived via Argon2id. One of the most important aspects is that your password is never stored on disk or in any keyring; it exists only in memory for your session. Beyond local data, we have deep PGP integration. You can sign and encrypt emails using file-based keys or even a YubiKey, and the client automatically verifies signatures on incoming mail.

Customization is another area where Matcha stands out. Every single keyboard shortcut can be remapped via a JSON configuration file, allowing you to create a setup that feels like Vim, Emacs, or anything else you prefer. We also built a powerful Lua-based plugin system. There is already a marketplace with over 35 community plugins for things like AI rewriting, unread counters, and custom status bars. If you want to extend the client, you can write your own scripts to react to events like receiving or sending mail.

The client also includes modern features you might not expect in a terminal, such as smart image rendering and hyperlink support. For those interested in automation, there is a dedicated CLI mode for sending emails that works great with AI agents or shell scripts. If you are a terminal enthusiast looking for a way to handle your email without leaving your environment, I would love for you to check it out on GitHub.

Repo: https://github.com/floatpane/matcha
Documentation: https://docs.matcha.email

u/andrinoff — 2 months ago

Matcha, secure email client in your terminal

It's a TUI email client written in Go — handles multiple accounts (Gmail, Outlook, iCloud, custom IMAP/JMAP), renders HTML emails including inline images via Kitty graphics, and has a markdown composer with contact autocomplete and draft autosave.

Security was a first-class concern. You get PGP signing with YubiKey support via PC/SC smartcard, S/MIME signing and envelope encryption, and optional at-rest AES-256-GCM encryption with Argon2id key derivation -- passwords are never stored, just verified against an encrypted sentinel. Credentials go through the OS keyring where available, OAuth2 for Gmail and Outlook.

There also is a plugin system. Plugins are sandboxed Lua — no os/io/debug access — and they can hook into pretty much everything: incoming mail, sending, folder switches, composer keystrokes. I just added a body manipulation hook so plugins receive both the raw email source and the rendered ANSI output.

There are 6 built-in themes including Catppuccin Mocha, and you can define your own in JSON — full color palette control over accent, text, danger, links, etc. On macOS it syncs with the system appearance automatically. Keybindings are all remappable through config, and the Lua plugin system lets you reshape the UI further -- custom status bar text, keyboard shortcuts scoped per view, notifications.

For localization, 11 languages are supported out of the box: English, German, French, Spanish, Portuguese, Russian, Ukrainian, Polish, Japanese, Chinese, and Arabic. Arabic includes proper RTL direction handling. Language is picked up automatically or set in config.

github.com/floatpane/matcha, MIT licensed.

Documentation at https://docs.matcha.email

Discord: discord.gg/RxNrJgfatk

u/andrinoff — 2 months ago
▲ 354 r/coolgithubprojects+2 crossposts

I've been working on Matcha, a terminal-first email client written in Go on top of Bubble Tea. It started as "I want to read mail without leaving tmux" and grew into a real client. Sharing it here in case it's useful to anyone else.

Repo: https://github.com/floatpane/matcha Docs: https://docs.matcha.floatpane.com

What it does

  • IMAP, JMAP (Fastmail), and POP3 backends — same TUI on top
  • Multi-account inbox with per-account SMTP send
  • Real attachment handling (download, open, save)
  • Inline image rendering via Kitty graphics, Sixel, and iTerm2 protocols — your terminal supports it, you see the image
  • Markdown composer with HTML output
  • Calendar invitations: parse .ics, RSVP from the inbox (Google / Outlook / Apple Mail compatible iMIP replies)
  • Background daemon for IMAP IDLE push, so new mail arrives without polling
  • A matcha send CLI for scripts and AI agents (compose-and-send without entering the TUI)
  • Plugin marketplace — 35+ community plugins, browse and install from inside the TUI

Security

This was the part I cared about most.

  • Encrypted config at rest: all credentials (passwords, OAuth tokens, S/MIME keys) sit behind AES-256-GCM with an Argon2id-derived key. Optional, opt-in, but the moment you enable it the on-disk state is unreadable without your passphrase.
  • PGP signing for outgoing mail, and verification
  • S/MIME signing + encryption, with proper PKCS#7 detached signatures
  • OAuth2 (XOAUTH2) for Gmail / Outlook so passwords never touch disk for those providers
  • YubiKey support for PGP operations (PKCS#11 path)
  • TLS by default on all transports, MinVersion: TLS 1.2
  • Local data is owner-only (0600 / 0700); the daemon socket is owner-only too
  • HTML email is sanitized before render — no remote-image fetch unless you explicitly opt in

Install

Nightly builds and tagged releases on GitHub. macOS, Linux, Windows.

Discord: https://discord.gg/jVnYTeSPV8

Happy to answer questions.

u/andrinoff — 2 months ago
▲ 82 r/foss+8 crossposts

I've been working on Matcha, a terminal-first email client written in Go on top of Bubble Tea. It started as "I want to read mail without leaving tmux" and grew into a real client. Sharing it here in case it's useful to anyone else.

Repo: https://github.com/floatpane/matcha Docs: https://docs.matcha.floatpane.com

What it does

  • IMAP, JMAP (Fastmail), and POP3 backends — same TUI on top
  • Multi-account inbox with per-account SMTP send
  • Real attachment handling (download, open, save)
  • Inline image rendering via Kitty graphics, Sixel, and iTerm2 protocols — your terminal supports it, you see the image
  • Markdown composer with HTML output
  • Calendar invitations: parse .ics, RSVP from the inbox (Google / Outlook / Apple Mail compatible iMIP replies)
  • Background daemon for IMAP IDLE push, so new mail arrives without polling
  • A matcha send CLI for scripts and AI agents (compose-and-send without entering the TUI)
  • Plugin marketplace — 35+ community plugins, browse and install from inside the TUI

Security

This was the part I cared about most.

  • Encrypted config at rest: all credentials (passwords, OAuth tokens, S/MIME keys) sit behind AES-256-GCM with an Argon2id-derived key. Optional, opt-in, but the moment you enable it the on-disk state is unreadable without your passphrase.
  • PGP signing for outgoing mail, and verification
  • S/MIME signing + encryption, with proper PKCS#7 detached signatures
  • OAuth2 (XOAUTH2) for Gmail / Outlook so passwords never touch disk for those providers
  • YubiKey support for PGP operations (PKCS#11 path)
  • TLS by default on all transports, MinVersion: TLS 1.2
  • Local data is owner-only (0600 / 0700); the daemon socket is owner-only too
  • HTML email is sanitized before render — no remote-image fetch unless you explicitly opt in

Install

Nightly builds and tagged releases on GitHub. macOS, Linux, Windows.

Discord: https://discord.gg/jVnYTeSPV8

Happy to answer questions.

u/andrinoff — 1 month ago