=== 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.0.31
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 using IMAP and SMTP. Keep your existing address and provider. 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, follow threads 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 connected 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 sending results, with 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 you authorize 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, layouts and signature rules.

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 WordPress 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 IMAP sign-in Microsoft 365 accepts. 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, then test the connection before adding it. Free connects one mailbox.
2. The inbox in the WordPress dashboard, with folders, labels, tags, search, the reading pane, and the appearance controls.
3. Writing a message: rich text formatting, recipient controls, and a composer with nothing else competing for the screen.
4. PressedMail on a phone: the mobile inbox, mobile settings, and a compose toolbar you can rearrange. The AI entries stay inactive without Pro.
5. Settings: accounts, signatures, preferences, email rules and security, plus WordPress email through your own SMTP server, access control, and diagnostics.
6. Calendar, contacts, and alternative layouts. These belong to PressedMail Pro, the separate paid plugin, and are not part of 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 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 configured 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 synchronization 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 information, 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.0.31](https://github.com/CurbSoftware/pressedmail/tree/v1.0.31)
* [Build instructions for version 1.0.31](https://github.com/CurbSoftware/pressedmail/blob/v1.0.31/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.

= 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.0.31 =
* Automatic mailbox work pauses until a site administrator approves this installation, including after an upgrade or site copy. Manual sending remains available.
* Corrected package descriptions and build instructions as part of the plugin quality pass.
* Email rules now move deleted messages to Trash instead of permanently deleting them.
* Removed the bundled translations because they were mostly untranslated. WordPress.org language packs still load when available.

= 1.0.30 =
* On WordPress 6.9+, supported mail operations are WordPress abilities. The MCP Adapter plugin lets authorized agents use them with the same permission checks as the app.
* Renamed job intervals to pressedmail_every_minute and pressedmail_every_five_seconds. Old jobs are cleared on upgrade and queued again on the next page load.

== Upgrade Notice ==

= 1.0.31 =
Mailbox automation pauses after this upgrade until an administrator approves the site from the notice shown on every admin screen. Manual sending still works.
