From dc7d7e667607020d62ac0b535f43a0575cbc5e96 Mon Sep 17 00:00:00 2001 From: ClaraCrazy Date: Tue, 1 Oct 2024 23:29:09 +0200 Subject: [PATCH] clean up app.json and example config, also update README todo list --- README.md | 14 ++++++------ app.json | 42 +++++++++++++++++++++++++++--------- application/config.sample.js | 8 +++---- package.json | 2 +- 4 files changed, 44 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 80709f8..d647de1 100644 --- a/README.md +++ b/README.md @@ -95,13 +95,15 @@ WantedBy=multi-user.target

----- -### TODO: -- Clean up codebase +### TODO (PRs welcome): +- Clean up code inside application folder +- Add user registration: + - Optional "premium" domains that arent visible to the public to prevent them from being scraped and flagged + - Allow people to set a password for their email (releases X time after last login) + - Allow people to set up forwarding -#### Maybe later (PRs welcome): -- Allow users to set a password for their email -- Set up forwarding -- Sending emails +#### Unsure: +- Possible payment integration once registration exists, to lock one or more of these new features behind a paywall (configurable, ofc)

diff --git a/app.json b/app.json index 4461eaf..8837ea8 100644 --- a/app.json +++ b/app.json @@ -1,18 +1,19 @@ { - "name": "48hr.email | disposable email", - "description": "a simple and fast disposable mail service that works directly with your imap server. No database required.", + "name": "48hr.email | Disposable email", + "description": "A simple and fast disposable mail service that works directly with your already existing imap server. No database required.", "repository": "https://github.com/Crazyco-xyz/48hr.email", - "logo": "https://github.com/Crazyco-xyz/48hr.email/blobl/main/infrastructure/web/public/images/logo.png", + "logo": "https://github.com/Crazyco-xyz/48hr.email/blob/main/infrastructure/web/public/images/logo.png", "keywords": [ "node", "disposable-mail" ], "env": { "DOMAINS": { - "description": "Email domains." + "description": "Email domains" }, - "IMAP_SERVER": { - "description": "Hostname of the server (usually imap.example.com)" + "DELETE_MAILS_OLDER_THAN_DAYS": { + "description": "How many days to to wait before deleting messages", + "value": 2 }, "IMAP_USER": { "description": "Username to login to the imap server" @@ -20,11 +21,32 @@ "IMAP_PASSWORD": { "description": "Password to login to the imap server" }, - "IMAP_REFRESH_INTERVAL_SECONDS": { - "description": "How often to refresh the imap messages manually" + "IMAP_SERVER": { + "description": "Hostname of the server (usually imap.example.com or mx.example.com)" }, - "DELETE_MAILS_OLDER_THAN_DAYS": { - "description": "How many days to to wait before deleting messages." + "IMAP_PORT": { + "description": "Port of the server (usually 993)", + "value": 993 + }, + "IMAP_TLS": { + "description": "Use tls or not", + "value": true + }, + "IMAP_AUTHTIMEOUT": { + "description": "Timeout for the auth", + "value": 3000 + }, + "IMAP_REFRESH_INTERVAL_SECONDS": { + "description": "How often to refresh the imap messages manually", + "value": 60 + }, + "HTTP_PORT": { + "description": "Port to listen on", + "value": 3000 + }, + "HTTP_BRANDING": { + "description": "The branding of the site", + "value": ["48hr.email", "Crazyco", "https://crazyco.xyz"] } } } diff --git a/application/config.sample.js b/application/config.sample.js index acbdf6f..e982589 100644 --- a/application/config.sample.js +++ b/application/config.sample.js @@ -1,5 +1,3 @@ -// Note: Also update app.json and README.md! - const config = { email: { domains: process.env.EMAIL_DOMAINS, @@ -12,10 +10,10 @@ const config = { port: process.env.IMAP_PORT || 993, tls: process.env.IMAP_TLS || true, authTimeout: process.env.IMAP_AUTHTIMEOUT || 3000, - refreshIntervalSeconds: process.env.IMAP_REFRESH_INTERVAL_SECONDS || 10 + refreshIntervalSeconds: process.env.IMAP_REFRESH_INTERVAL_SECONDS || 60 }, http: { - port: normalizePort(process.env.HTTP_PORT || '3000'), + port: normalizePort(process.env.HTTP_PORT || 3000), branding: process.env.HTTP_BRANDING || ["48hr.email", "CrazyCo", "https://crazyco.xyz"] }, } @@ -48,4 +46,4 @@ function normalizePort(val) { return false } -module.exports = config; \ No newline at end of file +module.exports = config; diff --git a/package.json b/package.json index 6b0ac1c..838433e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "48hr.email", - "version": "1.5.2", + "version": "1.5.3", "private": false, "scripts": { "start": "node --trace-warnings ./app.js",