Self-hosted email relay service
Webhook ่งฆๅ ยท ๆจกๆฟ็ฎก็ ยท ้
้ขๆงๅถ ยท ๅฎๆดๆฅๅฟ
Dove ๆฏไธไธช่ชๆ็ฎก็้ฎไปถไธญ็ปงๆๅก๏ผ่ฟ่กๅจ Cloudflare Workers ไธใไธชไบบ้กน็ฎ้่ฟ Webhook ๅ้้ฎไปถ๏ผDove ่ด่ดฃ็ฎก็้ฎไปถๆจกๆฟใๆถไปถไบบ็ฝๅๅใๅ้้ ้ขๅๅฎๆดๆฅๅฟ๏ผ้่ฟๅฏ้ ็ฝฎ็้ฎไปถๆๅกๅ๏ผResend / Cloudflare Email Routing๏ผๆ้ใ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Your Projects โ
โ SaaS App ยท CLI Tool ยท Cron Job ยท ... โ
โโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ POST /api/webhook/send (Bearer token)
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Dove (Cloudflare Workers) โ
โ Auth โ Quota Check โ Template Render โ Send Log โ
โโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Resend API / Cloudflare Email Routing
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Recipient Inbox โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
| ๅฑ | ๆๆฏ |
|---|---|
| ่ฟ่กๆถ | Cloudflare Workers |
| API ๆกๆถ | Hono |
| ่ฏญ่จ | TypeScript (strict mode) |
| ๆฐๆฎๅบ | Cloudflare D1 (native binding) |
| ไผ่ฏๅญๅจ | Cloudflare KV |
| ่ฎค่ฏ | Google OAuth + KV sessions + email whitelist |
| ๅ็ซฏ | React 19 SPA (Vite + React Router) |
| UI | Tailwind CSS v4 + shadcn/ui |
| ๅพ่กจ | Recharts |
| ๆ ก้ช | Zod v4 |
| ้ฎไปถ | Resend API / Cloudflare Email Routing |
| ้จ็ฝฒ | wrangler deploy (single command) |
็ฏๅข่ฆๆฑ๏ผBun โฅ 1.3
git clone https://github.com/nocoo/dove.git
cd dove
bun install
bun dev # http://localhost:7034| ๅฝไปค | ่ฏดๆ |
|---|---|
bun dev |
ๅฏๅจๅผๅๆๅกๅจ (port 7034) |
bun run build |
็ไบงๆๅปบ |
bun test |
่ฟ่กๅๅ ๆต่ฏ |
bun run test:coverage |
ๅๅ ๆต่ฏ + 90% ่ฆ็็้จๆง |
bun run typecheck |
TypeScript ็ฑปๅๆฃๆฅ |
bun run lint |
ESLint (strict, 0 warnings) |
bun run test:e2e:api |
L2 API E2E ๆต่ฏ (port 17034) |
bun run test:e2e:bdd |
L3 Playwright BDD E2E (port 27034) |
bun run gate:security |
ๅฎๅ จๆซๆ (osv-scanner + gitleaks) |
bun run release |
ๅ็ (SemVer bump + CHANGELOG + tag + GH release) |
| ๅฑ | ๅ ๅฎน | ่งฆๅๆถๆบ |
|---|---|---|
| L1 Unit | โฅ90% coverage (bun test) | pre-commit |
| G1 Static | tsc strict + ESLint strict + max-warnings=0 | pre-commit |
| L2 API E2E | REST endpoint coverage (port 17034) | pre-push |
| G2 Security | osv-scanner + gitleaks | pre-push |
| L3 BDD E2E | Playwright ๆ ธๅฟๆต็จ (port 27034) | on-demand |
MIT ยฉ 2026
