mirror of
https://github.com/dreamhunter2333/cloudflare_temp_email.git
synced 2026-05-06 20:32:55 +08:00
2.8 KiB
2.8 KiB
cloudflare temp email
中文
Live Demo
This is a temporary email service that uses Cloudflare Workers to create a temporary email address and view the received email in web browser.
Features
- Cloudflare D1 as a database
- Deploy the front end with Cloudflare Pages
- Deploy the backend with Cloudflare Workers
- Email forwarding using Cloudflare Email Routing
- Use password to login to the previous mailbox again.
- Get Custom Name Email
- Support multiple languages
- Add access authorization, which can be used as a private site
- Add auto reply feature
- Add attachment viewing function
- use rust wasm to parse email
Deploy
DB - Cloudflare D1
# create a database, and copy the output to wrangler.toml in the next step
wrangler d1 create dev
wrangler d1 execute dev --file=db/schema.sql
# schema update, if you have initialized the database before this date, you can execute this command to update
# wrangler d1 execute dev --file=db/2024-01-13-patch.sql
# wrangler d1 execute dev --file=db/2024-04-03-patch.sql
Backend - Cloudflare workers
The first deployment will prompt you to create a project. Please fill in production for the production branch.
cd worker
pnpm install
# copy wrangler.toml.template to wrangler.toml
# and add your d1 config and these config
# PREFIX = "tmp" - the email create will be like tmp<xxxxx>@DOMAIN
# IF YOU WANT TO MAKE YOUR SITE PRIVATE, UNCOMMENT THE FOLLOWING LINES
# PASSWORDS = ["123", "456"]
# For admin panel, if not set will no allow to access the admin panel
# ADMIN_PASSWORDS = ["123", "456"]
# DOMAINS = ["xxx.xxx1" , "xxx.xxx2"] you domain name
# JWT_SECRET = "xxx"
# BLACK_LIST = ""
cp wrangler.toml.template wrangler.toml
# deploy
pnpm run deploy
you can find and test the worker's url in the workers dashboard
Cloudflare Email Routing
Before you can bind an email address to your Worker, you need to enable Email Routing and have at least one verified email address.
enable email route and config email forward catch-all to the worker
Frontend - Cloudflare pages
The first deployment will prompt you to create a project. Please fill in production for the production branch.
cd frontend
pnpm install
# add .env.local and modify VITE_API_BASE to your worker's url
# VITE_API_BASE=https://xxx.xxx.workers.dev - don't put / in the end
cp .env.example .env.local
pnpm build --emptyOutDir
pnpm run deploy




