=== PressedMail - Email Client, Inbox & Webmail ===
Contributors: curbsoftwareinc
Tags: email, email client, imap, smtp, webmail
Requires at least: 6.6
Tested up to: 7.1
Stable tag: 1.1.0
Requires PHP: 8.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Read, reply, and organize email inside WordPress. Includes one inbox, unlimited tags, light and dark modes, and SMTP for site notifications.

== Description ==

PressedMail Free connects one mailbox to your WordPress dashboard over IMAP and SMTP. Keep your existing address and provider, and read, reply, search and file mail without leaving your site.

* Compose, reply, reply-all and forward, with CC, BCC and a signature.
* Browse folders, move messages, and mark mail read or unread.
* Create email rules and unlimited tags to organize incoming mail.
* Use light or dark mode, keyboard navigation and a mobile layout.
* Choose the optional dyslexia-friendly reading mode.

= Email with security controls built in =

Messages use an isolated viewer and sanitized HTML. Remote images stay blocked until you display them. WordPress permissions protect mailbox access; each mailbox belongs to its owner. These controls complement your provider's filtering.

= Send WordPress email through SMTP =

Configure website notifications separately from your inbox. PressedMail handles password resets, store receipts and other messages sent through wp_mail(). The optional delivery log records results for a retention period you choose; it stores no bodies, headers or attachments.

On WordPress 6.9 and later, PressedMail registers supported mail actions as WordPress abilities. An agent authorized through the MCP Adapter plugin uses the same permission checks.

No license key required. No trial expiration. Free has no CurbSoftware telemetry, analytics, license checks or custom update checks. Updates come from WordPress.org. Your email provider's terms and charges still apply.

= Need more? PressedMail Pro expands the workspace =

* Connect multiple mailboxes and read them in one combined inbox.
* Manage contacts and calendars.
* Use auto-replies, follow-ups, snippets, aliases, scheduled sending, snooze and undo send.
* Configure AI writing help, summaries and organization with your own provider.
* Add phishing checks, link warnings, themes and layouts.

Pro is a separate GPL-compatible paid plugin, absent from this download. AI providers may charge for usage. [Compare editions](https://pressedmail.com/pricing).

[Setup documentation](https://pressedmail.com/docs) and [WordPress.org support](https://wordpress.org/support/plugin/pressedmail/).

== Installation ==

1. In WordPress, go to Plugins > Add New and search for PressedMail.
2. Install and activate the plugin.
3. Open PressedMail from the admin sidebar.
4. Connect your mailbox using its provider settings or supported sign-in method.
5. Open your inbox and start reading and replying.

For website notifications, open PressedMail, then Settings, then WordPress Email, and send a test message.

== Frequently Asked Questions ==

= Which email providers work? =

Use a compatible IMAP/SMTP account and a host that permits connections to it. Setup offers Gmail, Outlook and Hotmail, and Custom Email for providers such as cPanel, Zoho Mail and Fastmail.

Gmail needs an app password. Microsoft accounts use Microsoft sign-in, the only one Microsoft 365 accepts for IMAP. Provider plans and organization settings may affect access.

= Does a successful sending log entry prove delivery? =

No. It reports whether the SMTP server accepted the message, not whether it reached the recipient's inbox.

= Can I move to Pro later? =

Yes. Replacing Free with Pro preserves compatible accounts, settings and local data.

== Screenshots ==

1. Connect an email account: pick a provider, enter the IMAP and SMTP details, and test the connection before adding it. Free connects one mailbox.
2. The inbox in the dashboard, with folders, labels, tags, search, the reading pane, and the appearance controls.
3. Writing a message: rich text formatting, recipient controls, and nothing else competing for the screen.
4. PressedMail on a phone: the mobile inbox, mobile settings, and a rearrangeable compose toolbar. The AI entries stay inactive without Pro.
5. Settings: accounts, signatures, preferences, email rules and security, plus WordPress email through your SMTP server, access control, and diagnostics.
6. Calendar, contacts, and alternative layouts. These belong to PressedMail Pro, the separate paid plugin, not this download.

== Privacy and External Services ==

Installation and activation send no email content or mailbox metadata to CurbSoftware or an AI service. External connections serve your configured email accounts or authorized user actions.

= Your IMAP server =

PressedMail connects to the host and port you configure to list folders, synchronize, search, read, move, flag or delete mail. Using your security settings, it sends the mailbox username or address, credential or OAuth access token, and the commands needed for that action.

Your provider returns folders, message identifiers, senders, recipients, dates, subjects, headers, bodies, attachments, flags, labels and sync state. Your provider's terms and privacy policy apply.

= Your SMTP server =

When you send mail or WordPress sends configured site notifications, PressedMail connects to your SMTP host and port using your security settings. It transmits authentication, sender, recipients, subject, headers, body and attachments. Your provider's terms and privacy policy apply.

= Optional Microsoft sign-in =

Microsoft sign-in uses Microsoft's identity services and the PressedMail OAuth relay. Password and app-password connections do not use it.

* https://pressedmail.com/oauth/microsoft/start receives the site URL, WordPress administrator callback URL and cryptographic nonce when sign-in starts.
* https://pressedmail.com/oauth/microsoft/redeem receives the one-time transfer code, site URL and same nonce after Microsoft's redirect.
* https://pressedmail.com/oauth/microsoft/refresh receives the refresh token, site URL and a fresh nonce when a replacement access token is needed.

The relay returns mailbox identity, access and refresh tokens, granted scope and token expiry to your site. It receives no bodies, attachments or mailbox contents. Microsoft receives the authentication and authorization data its identity and mail services require.

[PressedMail terms](https://pressedmail.com/terms-of-service), [PressedMail privacy](https://pressedmail.com/privacy), [Microsoft terms](https://www.microsoft.com/servicesagreement), [Microsoft privacy](https://privacy.microsoft.com/privacystatement).

= Remote images =

Images are blocked by default. If you display one, your browser contacts its host directly. That host may receive the image URL, IP address, user agent, browser headers and applicable cookies. Its terms and privacy policy apply. Loading an image can tell the sender that you viewed the message.

= Local storage and sending logs =

Account settings, encrypted credentials or OAuth tokens, and synchronized mail data are stored in your WordPress database or filesystem as needed. The site owner controls hosting, access, backups, retention, account removal, personal-data requests and uninstall cleanup.

The optional notification delivery log stores the date, first recipient, recipient count, subject, sender, mail server and sending result. It stores no bodies, headers or attachments. Entries are deleted after your chosen retention period; you can clear or disable logging.

== Development ==

= Source code and build instructions =

Readable TypeScript, React, CSS, manifests and build tools for the Free interface are public:

* [Source repository](https://github.com/CurbSoftware/pressedmail)
* [Source for version 1.1.0](https://github.com/CurbSoftware/pressedmail/tree/v1.1.0)
* [Build instructions for version 1.1.0](https://github.com/CurbSoftware/pressedmail/blob/v1.1.0/BUILD.md)

Use Node.js 22.13 or later. Run `corepack enable` for the pnpm version pinned in package.json, then from the repository root:

`pnpm install --frozen-lockfile && pnpm build`

The lockfile preserves dependency versions. Output goes to `assets/admin/dist/`. Pro source is excluded.

PHP requires no compilation. This download includes its readable sources and the Composer vendor tree it loads. One bundled third-party library carries a documented local patch, applied by the package builder; its diff and licensing note are published in the source repository.

= Open-source libraries and assets =

PressedMail Free uses WordPress's registered React, ReactDOM, and JSX runtime.

Libraries include:

* Plate.js: MIT
* Slate: MIT
* Vite: MIT
* Tailwind CSS: MIT
* Radix UI: MIT
* date-fns: MIT
* Zod: MIT
* Lodash: MIT
* juice: MIT
* unified, remark and micromark: MIT
* highlight.js: BSD-3-Clause
* DOMPurify: Apache-2.0 or MPL-2.0

OpenDyslexic is distributed under the SIL Open Font License 1.1. Its licence ships in this package as `assets/fonts/OFL.txt`.

== Changelog ==

Older releases are listed at https://pressedmail.com/changelog

= 1.1.0 =
* Background work runs from WordPress's own scheduler. No server cron entry to add.
* Threaded conversations are a paid-edition feature. Free shows one row per message.
* One signature per account: attaching a signature releases any other attached to it.
* The "Set as default" switch and the "Signatures on replies" preference are gone, and grouping is set from the theme popover only.

= 1.0.34 =
* Replies quote the original message under your text again.
* The subject sits above the attachments.
* Settings pages use the wide layout.
* The single mailbox is reconfigured in place by its owner or an administrator.
* Uninstall leaves data it did not create alone.

= 1.0.33 =
* The site approval banner appears only on the Plugins screen, not on every admin page.

== Upgrade Notice ==

Signatures now follow the account. The "Set as default" switch and the
"Signatures on replies" preference are gone, and an account keeps one signature:
if two were attached, the one it was sending stays and the other is detached.
