An open source desktop email client for Mac, Windows and Linux, built with Electron and React with a C++ sync engine.
- Stars
- 1,382
- Forks
- 41
- Open issues
- 1
- Last commit
- 12 days ago
What is it?
emailmd is a TypeScript library and CLI that turns markdown into HTML email. Email clients such as Gmail, Outlook and Apple Mail render HTML inconsistently, so writing email markup by hand usually means table-based layouts and fragile workarounds. emailmd handles that conversion, so you write markdown and get HTML plus a plain-text version for the text/plain MIME part.
The render function is async and returns both html and text. Markdown extensions such as button links and directive blocks add components like bar charts, progress meters, sparklines and KPI tiles, drawn from table cells and text glyphs instead of images, so they still display when remote images are blocked. A separate @emailmd/react package provides a preview hook, an iframe preview component and an embeddable builder.
The project also includes a Model Context Protocol server with render, lint and read_docs tools, usable over HTTP or locally via stdio. It requires Node 20 or later and is built on MJML.
Key features
- 01Converts markdown to email-safe HTML and a plain-text version in one render call.
- 02Includes a CLI that reads from files or stdin and outputs HTML or text.
- 03Adds chart and KPI components written as plain markdown lists.
- 04Provides React hooks and components for live email previews.
- 05Offers an MCP server with render, lint and docs tools for AI assistants.
Use cases
- Writing transactional or marketing emails in markdown instead of hand-coded HTML tables.
- Generating email bodies in a backend service with a multipart text and HTML output.
- Letting an AI assistant draft and lint email templates through the MCP server.
- Embedding an email editor and live preview in a React application.
Topics
FAQ
- What is emailmd?
- Converts markdown into responsive, email-safe HTML that renders consistently across major email clients, with a plain-text part. emailmd is a TypeScript library and CLI that turns markdown into HTML email. Email clients such as Gmail, Outlook and Apple Mail render HTML inconsistently, so writing email markup by hand usually means table-based layouts and fragile workarounds. emailmd handles that conversion, so you write markdown and get HTML plus a plain-text version for the text/plain MIME part.
- Is emailmd free to use? What license does it have?
- emailmd is open source under the MIT license. Check the license terms before using it in commercial products.
- Is emailmd still maintained?
- Actively maintained. The last commit to emailmd was on Oct 6, 2026.
- What can I use emailmd for?
- Writing transactional or marketing emails in markdown instead of hand-coded HTML tables. Generating email bodies in a backend service with a multipart text and HTML output. Letting an AI assistant draft and lint email templates through the MCP server. Embedding an email editor and live preview in a React application.
- Where can I get emailmd?
- The source code and installation instructions are on GitHub: https://github.com/anypost/emailmd
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An open-source headless CMS for Markdown, MDX, JSON and YAML content, with a GraphQL API and optional live visual editing.
A self-hosted web workspace for the Hermes Agent, combining chat, files, terminal, memory, skills and multi-agent controls in one UI.
Fair-code workflow automation platform for building AI agents and workflows, with a visual canvas, custom code, and 1500+ integrations.
An agent harness for Claude Code and Codex that adds multi-agent swarms, shared memory, task routing and cross-machine federation.
An open-source framework for building universal native apps with React that run on Android, iOS, and the web.