explaingit

dreamhunter2333/cloudflare_temp_email

9,301TypeScriptAudience · developerComplexity · 4/5Setup · moderate

TLDR

Run your own free disposable email service on Cloudflare's free tier, visitors get temporary inboxes, you keep full control over the data, and the whole thing costs nothing to operate.

Mindmap

mindmap
  root((CF Temp Email))
    Features
      Disposable inboxes
      Send and receive
      File attachments
      Spam filtering
    Auth options
      Password login
      OAuth2 GitHub
      Passkeys
    Tech stack
      Cloudflare Workers
      Vue 3 frontend
      D1 SQLite
      Rust WebAssembly
    Extras
      Telegram bot
      Admin panel
      SMTP proxy
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Deploy a self-hosted temporary email service that runs entirely on Cloudflare's free plan at zero cost.

USE CASE 2

Protect your real email address by giving out disposable addresses for website signups and forms.

USE CASE 3

Add a Telegram bot to get notified on your phone whenever a new email arrives in the service.

USE CASE 4

Extend the service with OAuth2 logins, file attachments, and an admin panel for user management.

Tech stack

TypeScriptVue 3Cloudflare WorkersCloudflare D1RustWebAssembly

Getting it running

Difficulty · moderate Time to first run · 1h+

Requires a Cloudflare account with Email Routing and D1 database configured, deployment is done via a GitHub Actions workflow.

Intended for personal and educational use, the author is not responsible for illegal use.

In plain English

This project lets you build and run your own temporary email service entirely on Cloudflare's free infrastructure, which means it costs nothing to operate once deployed. Visitors get a disposable inbox address they can use to receive messages without revealing a real email account. The service is self-hosted, so the person who deploys it controls the data and configuration. The feature list goes well beyond a basic inbox. You can send email out (not just receive it), attach files, store attachments in S3-compatible storage, and configure spam filtering with blacklists. Users can log in with a password, with OAuth2 providers like GitHub, or with a passkey (no password at all). There is a Telegram bot for notifications and a mobile client built by the community for Android. An admin control panel handles user management, scheduled cleanup of old messages, and access control. Under the hood, the backend runs as a Cloudflare Worker (a serverless function that runs at Cloudflare's edge), and the frontend is a Vue 3 app deployed to Cloudflare Pages. Email is routed through Cloudflare Email Routing. What makes parsing unusually fast is a module written in Rust and compiled to WebAssembly, which handles decoding incoming messages more reliably than most JavaScript-based parsers. The database is Cloudflare D1, a SQLite-compatible service, and key-value storage handles session and cache data. Deployment is documented and can be done through a GitHub Action workflow. There is also an SMTP and IMAP proxy so that standard email clients can connect to the service if needed. Rate limiting and a Cloudflare Turnstile challenge (a bot-detection widget) are available to prevent abuse. The project is primarily documented in Chinese, though an English README is included. It is intended for learning and personal use, and the author notes that using it for anything illegal is the user's own responsibility.

Copy-paste prompts

Prompt 1
I want to deploy cloudflare_temp_email on my own Cloudflare account using the GitHub Actions workflow. Walk me through the steps including setting up the D1 database and Email Routing.
Prompt 2
Help me configure cloudflare_temp_email to add GitHub OAuth2 login and restrict temporary addresses to my own domain only.
Prompt 3
I deployed cloudflare_temp_email and want to set up the Telegram bot so I get a notification when a new email arrives. What do I configure?
Prompt 4
Explain how cloudflare_temp_email uses Rust compiled to WebAssembly to parse incoming emails and why that approach is faster than a JavaScript-based parser.
Open on GitHub → Explain another repo

← dreamhunter2333 on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.