Transactional email framework for Phoenix.
Composes on top of Swoosh, shipping the framework layer Swoosh omits: HEEx-native components, LiveView preview dashboard, normalized webhook events, suppression lists, RFC 8058 List-Unsubscribe, multi-tenant routing, and an append-only event ledger.
Getting Started
config :mailglass,
repo: MyApp.Repo,
adapter:
{Mailglass.Adapters.Swoosh,
swoosh_adapter:
{Swoosh.Adapters.Postmark, api_key: System.fetch_env!("POSTMARK_API_KEY")}}Stability Contract
The canonical v1.x contract inventory for the core package lives in
docs/api_stability.md.
Treat this module as a narrow root entrypoint:
Mailglass.deliver/2,deliver!/2,deliver_later/2,deliver_many/2, anddeliver_many!/2are stable adopter-facing delegates.- Root reachability or
Boundaryexports do not mean every exportedMailglass.*module is promised public API. - Exported helpers used for framework wiring, internal implementation, or
sibling-package integration remain classified in the stability inventory as
stable,internal, orsibling-package-only.
Architecture
See Mailglass.Config, Mailglass.Renderer, Mailglass.Components, and
docs/api_stability.md.
Summary
Functions
Synchronous delivery. See Mailglass.Outbound.deliver/2.
Bang variant. See Mailglass.Outbound.deliver!/2.
Asynchronous delivery. See Mailglass.Outbound.deliver_later/2.
Batch async delivery. See Mailglass.Outbound.deliver_many/2.
Bang batch variant. See Mailglass.Outbound.deliver_many!/2.
Functions
Synchronous delivery. See Mailglass.Outbound.deliver/2.
Bang variant. See Mailglass.Outbound.deliver!/2.
Asynchronous delivery. See Mailglass.Outbound.deliver_later/2.
Batch async delivery. See Mailglass.Outbound.deliver_many/2.
Bang batch variant. See Mailglass.Outbound.deliver_many!/2.