Mailcheap
Mailcheap 是一个基于 Amazon SES 的自托管邮件通讯应用,集编辑器、列表管理、退订与退信处理、统计和公开归档于一体。每发送 1,000 封邮件约花费 0.10 美元。
访问 marclou/mailcheap项目简介
Mailcheap 是一个基于 Amazon SES 构建的自托管邮件通讯应用。它在同一个 Next.js 应用中提供编辑器、列表管理、注册表单、退订处理、退信与投诉处理、统计以及公开归档。只有一名管理员,无需团队协作,订阅者名单保存在你自己的数据库中。每发送 1,000 封邮件约花费 0.10 美元。
核心功能
- 编辑器支持实时邮件预览、斜杠命令、图片上传、方框、Markdown 和原始 HTML。每次发送前会检查主题、预览文字、退订链接、大小是否低于 Gmail 的 100 KB 截断限制、邮寄地址和已验证域名。支持测试邮件、定时发送,以及通过 QStash 按设定速率分批发送,并可先发给最活跃的读者。一次安装可运行多个邮件通讯,每个都有自己的发件地址、回复地址、邮寄地址、注册表单和注册 API。包含 SES 事件、共享抑制列表,当退信率超过 2% 或投诉率超过 0.08%
适用场景
- 在自己的 Amazon SES 账户上自托管邮件通讯,同时将订阅者数据保存在自己的 MongoDB 数据库中。一次安装运行多个邮件通讯,使用独立的发送身份、注册表单和归档。先向最活跃的读者发送,并随时间逐步增加发送量,同时监控送达率。将期号发布到公开归档,并衡量送达、打开、点击、退信、投诉以及各邮箱服务商层面的营销活动表现。
快速开始
- 预计需要约一小时,其中大部分时间用于等待 DNS 生效和 AWS 批准生产访问权限。创建 MongoDB Atlas 集群,添加具有读写权限的数据库用户,允许 0.0.0.0/0,并将带数据库名称的连接字符串复制为 MONGODB_URI。部署到 Vercel,或在任何 Node.js 主机上以 npm ci && npm run build && npm start 运行并置于 HTTPS 之后;设置 MONGODB_URI、ADMIN_EMAIL、至少 12 个字符的 ADMIN_PASSWORD,以及至少 32 个字符的
部署与要求
- MongoDB 用于存储联系人、营销活动和统计;免费套餐即可。Amazon SES 用于发送;每 1,000 封邮件约 0.10 美元。Upstash QStash 用于后台发送和定时;初始可用免费套餐,之后按消息付费,一条消息可发送 50 封邮件。Vercel 或任何 Node.js 主机用于托管;免费套餐即可。可选的 Upstash Redis 用于让所有服务器实例共享速率限制;免费套餐。
采用前须知
- 许可证:MIT。在使用、修改或分发项目前,请确认其具体条款。