Overview:
The front-end app in this repository serves as a platform for displaying and sending emails. It integrates various features for email management and includes configurations for different environment variables. The project primarily utilizes Cloudflare Email Workers for incoming emails and MailChannels for outgoing emails.
Features:
- Email Display and Sending: Front-end application for managing emails.
- Cloudflare Email Workers: Handles incoming emails.
- MailChannels Integration: Manages outgoing emails.
- Custom Domain Support: Facilitates handling emails from a custom domain.
- Database Schema Deployment: Utilizes Next.js to deploy the database schema.
- Environment Variable Configuration: Requires setting up various environment variables for functionality.
- S3 Integration: Provides integration with Amazon S3 for storage functionality.
Installation:
- Clone the repository to your local machine.
- Install dependencies using Bun package manager.
npm install bun
- Configure environment variables by creating a
.envfile with the required variables.
| Name | Description | Required? |
|---|---|---|
| DATABASE_URL | The connection string/path to connect to the Sqlite DB | ✔️ |
| DATABASE_TOKEN | The token for DB (if using Turso) | ❌ |
| NEXT_PUBLIC_APP_URL | The URL where the app is hosted | ❌ |
| NEXT_PUBLIC_NOTIFICATIONS_PUBLIC_KEY | The public key for sending notifications | ✔️ |
| WEB_NOTIFICATIONS_PRIVATE_KEY | The private key for sending notifications | ✔️ |
| EMAIL_AUTH_TOKEN | The secret key for sending through Cloudflare Worker | ✔️ |
| EMAIL_DKIM_PRIVATE_KEY | The DKIM private key | ❌ |
| S3_KEY_ID | The Access Key ID for S3 | ✔️ |
| S3_SECRET_ACCESS_KEY | The Secret Access Key for S3 | ✔️ |
| S3_URL | The Client URL for S3 | ✔️ |
- Launch the Next.js website and deploy the database schema by running the necessary commands.
Summary:
The front-end app provided in this repository offers a solution for managing emails, incorporating features like Cloudflare Email Workers, MailChannels integration, custom domain support, and database schema deployment. By following the installation guide and configuring the required environment variables, users can set up and utilize this application for effective email management.