本项目仅供学习和个人用途,请勿将其用于任何违法行为,否则后果自负。
一个功能完整、可私有部署的临时邮箱服务。 基于 Cloudflare 全家桶(Workers / Pages / D1 / Email Routing)运行,零服务器成本即可收发邮件。
本仓库在上游开源项目的基础上做了一次以「更好用、可运营」为目标的重构,重点强化了界面体验、地址生命周期管理与多套餐/配额能力(详见下方 本版本主要改动)。
- 完全免费 - 基于 Cloudflare 免费服务构建,零成本运行
- 高性能 - Rust WASM 邮件解析,几乎所有邮件都能解析,响应极快
- 现代化界面 - 全新 Drift 视觉系统,响应式 + 深色模式,多语言
- 地址生命周期 - 临时 / 长期 / 永久邮箱,保留倒计时,到期自动清理(永久邮箱不被误删)
- 可运营 - 套餐 / 配额 / 发信余额展示,按角色控制权益,升级入口可开关
部署方式(命令行 / 用户界面 / GitHub Actions)与配置说明见仓库内文档站 vitepress-docs/:
cd vitepress-docs
pnpm install
pnpm dev # 本地预览文档各子项目的构建命令见 CLAUDE.md。Worker 绑定配置参考 worker/wrangler.toml.template。
查看 CHANGELOG(中文)/ CHANGELOG_EN(English)了解最新更新内容。
相对上游,本仓库新增 / 强化了以下能力:
- 全新 Drift UI 重设计 - 统一主题 token(冷青主色、雾白/石墨背景、8px 圆角)、品牌化顶栏、桌面侧边工作区导航;地址管理工作台(表格 + 详情面板 + 当前邮箱快速切换),完整深色模式。
- 地址保留期体系 - 地址区分
临时 / 长期 / 永久三种保留状态,列表与详情展示保留倒计时;自动清理任务排除永久与仍在保留期内的地址,避免误删用户邮箱。 - 永久邮箱升级 - 可将指定地址升级为永久邮箱,按用户角色
max_permanent_address_count配额校验并二次确认。 - 套餐与用量展示 - 展示当前套餐、地址上限、永久配额与发信余额;升级 / 付费入口由环境变量
ENABLE_PAYMENT_ENTRY控制,关闭时不显示任何升级提示。 - 每 IP + 域名创建限额 - 新建地址时按「IP × 基础域名」维度限流,缓解匿名滥用,额度可配置。
- 创建流程增强 - 域名选择器按用户角色过滤可用域名、随机二级域名开关只对支持的域名显示、配额满时保留输入并明确提示原因。
- 属性测试 - 新增多项前端属性测试(i18n 完整性、导航配置一致性、域名过滤、地址分组不重不漏等)。
升级数据库:全新部署使用
db/schema.sql;从旧版本升级请按日期顺序应用db/下的增量迁移(保留期相关见db/2026-06-08-retention-and-ip-limit.sql)。
核心功能详情(点击收缩/展开)
- 使用
rust wasm解析邮件,解析速度快,几乎所有邮件都能解析 - AI 邮件识别 - 使用 Cloudflare Workers AI 自动提取邮件中的验证码、认证链接、服务链接等重要信息
- 支持为指定基础域名创建随机二级域名邮箱地址,更适合收件隔离场景
- 支持发送邮件,支持
DKIM验证 - 支持
SMTP和Resend等多种发送方式 - 查看
附件功能,支持附件图片显示 - 支持 S3 附件存储和删除功能
- 垃圾邮件检测和黑白名单配置
- 邮件转发功能,支持全局转发地址
- 使用
凭证重新登录之前的邮箱 - 完整的用户注册登录功能,可绑定多个邮箱地址并一键切换当前邮箱
- 支持
OAuth2第三方登录(Github、Authentik 等) - 支持
Passkey无密码登录 - 用户角色管理,支持多角色域名、前缀与配额(地址上限 / 永久邮箱配额)配置
- 用户收件箱查看,支持地址和关键词过滤
- 完整的 admin 控制台
-
admin后台创建无前缀邮箱 - admin 用户管理页面,支持查看用户地址
- 定时清理功能,支持多种清理策略,且按地址保留状态保护永久 / 保留期内邮箱
- 获取自定义名字的邮箱,
admin可配置黑名单 - 增加访问密码,可作为私人站点
- 前后台均支持多语言
- 全新 Drift 视觉系统,响应式布局 + 深色模式
- 支持 Google Ads 集成
- 使用 shadow DOM 防止邮件正文样式污染
- 支持 URL JWT 参数自动登录
- 完整的
Telegram Bot支持、Telegram推送与 Telegram Bot 小程序 - 内置
SMTP proxy server,支持SMTP发送、IMAP查看邮件 - Webhook 支持,消息推送集成
- 支持
CF Turnstile人机验证 - 限流配置,防止滥用(含每 IP + 域名创建限额)
- Agent 友好 - 通过
ENABLE_AGENT_EMAIL_INFO展示 AI Agent 接入信息,便于 AI agent 直接消费邮箱,详见 文档
技术架构详情(点击收缩/展开)
- 数据库: Cloudflare D1 作为主数据库
- 前端部署: 使用 Cloudflare Pages 部署前端
- 后端部署: 使用 Cloudflare Workers 部署后端
- 邮件转发: 使用 Cloudflare Email Routing
- 前端: Vue 3 + Vite + Naive UI
- 后端: TypeScript + Cloudflare Workers(Hono)
- 邮件解析: Rust WASM (mail-parser-wasm)
- 数据库: Cloudflare D1 (SQLite)
- 存储: Cloudflare KV + R2 (可选 S3)
- 代理服务: Python SMTP/IMAP Proxy Server
- Worker: 核心后端服务(
worker/) - Frontend: Vue 3 用户界面(
frontend/) - Mail Parser WASM: Rust 邮件解析模块(
mail-parser-wasm/) - SMTP Proxy Server: Python 邮件代理服务(
smtp_proxy_server/) - Pages Functions: Cloudflare Pages 中间件(
pages/) - Documentation: VitePress 文档站点(
vitepress-docs/)
- 在 Resend 添加域名记录时,如果您的 DNS 服务商正在托管 3 级域名 a.b.com,请删除 Resend 生成的默认 name 中的二级域名前缀 b,否则会添加成 a.b.b.com 导致验证失败。添加记录后可通过以下命令验证:
nslookup -qt="mx" a.b.com 1.1.1.1本项目基于 dreamhunter2333/cloudflare_temp_email 二次开发,上游项目以 MIT 许可 开源。依据 MIT,原始代码的版权声明予以保留(归原作者 Dream Hunter);本仓库在其基础上进行了大量重构与功能增强,这部分改动的版权由本仓库维护者及贡献者享有。感谢上游作者与社区的优秀工作。