A web app for receiving and sending your emails!
There are 3 apps in this repository. It originally started with the web app, but I have since added a PWA and API to improve the user experience and replace the web app.
The original web app that was made with Next.js. This is right now whats used in production, however the others are being focused on and this soon will just be here as deprecated and historic value. |
The PWA app that was made with React & Bun bundler. This is a complete rewrite of the web app. Try it out. |
The API that was made with Bun's Bun.serve . This is a complete rewrite of the web app (api section).
|
Please refer the individual app README files for more information on how to selfhost or contribute to the project.
(what is planned for the new PWA and API)
React SPA: A simple local first React app that is hosted on Cloudflare Pages and can manage your emails. This will send api calls to the API to change the database.
API: A Bun based API that is hosted on VPS. Will handle all the email sending and receiving as well as the syncing apis.
I made this because I wanted to have a way to deal with my emails from a custom domain. The options from Gmail were too expensive, and I couldn't find a good alternative, so I made my own. I tried to make it in a way that gives you the most control over your emails (ie owning the worker receiving emails).
Many individuals and organizations have contributed to the creation of this project. Special thanks to:
- Vercel for hosting the application and for developing Next.js.
- Cloudflare for providing S3, workers, and email routing.
- Xata for providing a good pricing for database.
- Alfonsusac for designing the logo and sticker.
- Members of Next.js Discord for helping me with motivation and testing.
- and many more that I can't possibly mention...
If you encounter any issues or have questions, please join our Discord server for assistance. I'm more than willing to help. Please seek support through Discord rather than opening an issue, as it facilitates better communication and understanding of your problem.