🚀 Novu | 开源通知基础设施
发布: (2025年12月28日 GMT+8 15:22)
3 min read
原文: Dev.to
Source: Dev.to

概览
从头构建通知系统既耗时又复杂,而且往往是重复劳动。每个现代应用都需要邮件、SMS、推送通知、应用内收件箱以及实时更新——但独立维护这些功能简直是噩梦。
Novu 是一个强大的开源通知基础设施,能够在单一 API 下统一邮件、SMS、推送、聊天和应用内通知——并提供工作流自动化、实时投递以及可嵌入的 UI 组件。
关键特性
- ✅ 统一通知 API – 通过一个 API 发送邮件、SMS、推送、聊天和应用内消息
- ✅ 可嵌入的通知中心 – 即插即用的实时收件箱 UI,支持已读/未读状态
- ✅ 工作流与路由引擎 – 渠道优先级、回退以及条件逻辑
- ✅ 摘要与调度系统 – 批量通知以降低噪音
- ✅ 用户偏好管理 – 完全控制渠道与频率
- ✅ 实时更新 – 基于 WebSocket 的即时投递
- ✅ 开源且可自托管 – MIT 许可证,随处部署
技术栈与架构
后端
- 💻 Node.js + TypeScript – 核心后端
- 🧩 Express / NestJS – API 框架
- 📦 MongoDB – 通知存储
- ⚡ Redis + BullMQ – 队列与后台任务
- 🔌 WebSocket / Socket.io – 实时投递
- 📨 Handlebars – 邮件模板
前端
- 🎨 React – 仪表盘与收件箱 UI
- 💠 Tailwind CSS / CSS Modules – 样式
- 📘 Storybook – UI 组件开发
DevOps 与基础设施
- 🐳 Docker 与 Docker Compose
- 🔁 CI/CD 流水线
- 🌐 REST + WebSocket 架构
支持的提供商集成
- 邮件: SendGrid、Mailgun、AWS SES、Postmark、SMTP
- SMS: Twilio、Vonage、Plivo、SNS
- 推送: Firebase Cloud Messaging、Expo、APNS、Pushpad
- 聊天: Slack、Discord、Microsoft Teams
为什么选择 Novu?
- 🔹 消除重复的通知逻辑
- 🔹 在各渠道之间标准化工作流
- 🔹 节省大量开发时间
- 🔹 稳定可靠地扩展通知能力
- 🔹 使用现成的 UI 组件
GitHub 仓库与文档
💬 你会自己构建通知系统,还是依赖像 Novu 这样的开源基础设施?来聊聊吧!