Dispoflare
📧 Disposable email addresses powered by Cloudflare
Install / Use
/learn @LeoColomb/DispoflareREADME
Dispo<em>flare</em>
📧 Disposable email addresses on the fly powered by Cloudflare
Features
- ➕ Generate new email addresses at any time (via Email Router)
- 🔀 Random or user-defined username
- 🕵️ Use your own unique domain(s)
- 📅 Handle expiration dates (via Cron Triggers)
- ⏲️ Custom deprecation period (via Email Workers)
- 🗃️ Optional archived period with possible remediation
- 🗑️ Optional automatic clean up
About
Dispoflare provides an easy and free way to generate custom disposable email addresses.
The app can be seen as an alternative to Firefox Relay with custom domains.
Dispoflare app is levering Cloudflare products to host and manage the service:
- Email routing: Cloudflare Email Routing
- Static hosting: Cloudflare Pages
- Backend functions: Cloudflare Workers
- Authentication: Cloudflare Access
Getting started
Requirements
[!TIP] Dispoflare is a full-stack app running on top of Cloudflare platform.
We are of course assuming that you have:
- A Cloudflare account (click here if you don't)
- At least one zone using Cloudflare. If you don't have a zone, you can use Cloudflare Registrar.
All the used Cloudflare products offer a free plan that allows to try them for personal or hobby projects.
Deploy
[!IMPORTANT] Please pay attention to all the steps involved in the installation process.
[!Note] First deployment can be a bit tricky. If you face any problem, don't hesitate to open an issue.
- Authorize Workers to use your GitHub account.
- Enter your Account ID (from the previous section) under the
CLOUDFLARE_ACCOUNT_IDsecret. - Create an appropriate account token (it will redirect you to a token template with all the required permissions pre-configured).
Then enter the API token in the form under theCLOUDFLARE_API_TOKENsecret. - Press Create and deploy.
Access Policy
[!WARNING] Dispoflare has no user registration. You may need to setup Access Policy in Cloudflare's Zero Trust dashboard.
Dispoflare uses Zero Trust Access to handle user authentication. It assumes that your users will register with another identity provider (Zero Trust supports many providers or your custom one that implements Generic SAML 2.0).
Development & Contributions
Codespaces
This repository is ready for Development Containers. Click the badge above to create a codespace for this repository and start making and submitting changes.
Local
- Run
npm iin your terminal to install all dependencies - Run
npm run startin your terminal to start a development server - Open a browser tab at http://localhost:8787/ to see your worker in action
License
This project is licensed under MIT License.
