I am going to fix email for myself once and for all.
There are some requirements:
- Create different emails for each internet account
- Have a single screen that displays all email accounts (including work and school accounts)
- Offline access of mail
- Self-hostable
Todo:
- [ ] Use SES to send email
- [ ] Create an incoming email server (NixOS in Vultur). We need this for the static IP.
- [ ] Backend application (Using Zero Sync)
- [ ] Create web frontend
- [ ] Create terminal frontend (bonus)
- [ ] Create a mobile frontend (extra bonus)
Design
- Incoming Email
- Gmail: It looks like you can have a listener for new emails, and will get sent to the backend.
- Other: When an incoming email gets sent to the Vultr server, it will send a message to the backend.
- Message gets stored in Postgres DB & Zero Sync updates interfaces (Web, CLI, and Mobile)
- Outgoing Email
- Gmail: Use Gmail APIs to send emails
- Other: Uses Amazon's SES API to send emails