Tired of dealing with a cluttered email inbox? Vortex has you covered. It’s a simple solution for keeping your primary email clean by providing temporary email addresses - use them to sign up for newsletters, websites, and services without worrying about spam or unwanted emails!
Try it out at https://vortex.skyfall.dev, where you’ll find over 10 (sub)domains to choose from.
- Generate disposable email addresses
- Protect your primary email from spam and unwanted newsletters
- Ideal for one-time signups and temporary accounts (looking at you, Quora)
You will need:
- Rust
- Bun
- Node.js (to actually run the project)
- Redis (we use the redis:7 Docker image in production)
It's also highly recommended to use Docker so you can run the project as you would in production.
Run:
cargo b --release
The server will be located at /target/debug/vortex-server
.
Run:
cd frontend
bun install
bun run build
Ensure you've built everything first.
In one terminal, run:
RUST_LOG=debug FRONTEND_DOMAIN=localhost cargo run
By default, the SMTP server will listen on port 2525, so that you don't need to run it as root whilst developing.
In another terminal, run:
cd frontend
bun install
bun dev
By default, the project is configured to run on Vercel. If you're not running the project on Vercel, remove the Vercel preset from react-router.config.ts.
This assumes that you are using Docker and Caddy.
Firstly, create a new Linux user for Vortex. Then, install rootless Docker for the Vortex user.
Run this Docker command:
docker run -v /home/vortex/vtx-logs:/app/logs -p 2525:2525 -p 3000:3000 --name vortex-backend ghcr.io/skyfallwastaken/vortex.email:main
And finally, this Caddy reverse proxy command:
caddy reverse-proxy --from <your api domain> --to :3000
Licensed under the GNU Affero General Public License v3.0.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this application by you, as defined in the GNU Affero General Public License v3.0, shall be licensed as above, without any additional terms or conditions.