mirror of
https://github.com/Crazyco-xyz/48hr.email.git
synced 2026-01-09 11:19:36 +01:00
Add User table to sql, add user-repository, add registration and login routes, update config
61 lines
4.5 KiB
Text
61 lines
4.5 KiB
Text
# --- EMAIL CONFIGURATION ---
|
|
EMAIL_DOMAINS=["example.com","example.net"] # List of domains your service handles ['example.com', 'example.net']
|
|
|
|
# --- Purge configuration ---
|
|
EMAIL_PURGE_TIME=48 # Time value for when to purge
|
|
EMAIL_PURGE_UNIT="hours" # minutes, hours, days
|
|
EMAIL_PURGE_CONVERT=true # Convert to highest sensible unit (and round)
|
|
# /\ Example: 120 minutes = 2 hours, 121 minutes = ~2 hours with added tooltip
|
|
|
|
# --- Example emails to keep clean ---
|
|
EMAIL_EXAMPLE_ACCOUNT="example@48hr.email" # example email to preserve
|
|
EMAIL_EXAMPLE_UIDS=[1,2,3] # example UIDs to preserve
|
|
EMAIL_BLACKLISTED_SENDERS=[] # List of email addresses to block (Useful to prevent account generators) ["noreply@facebook.com", "noreply@amazon.com"]
|
|
|
|
# --- IMAP CONFIGURATION ---
|
|
IMAP_USER="user@example.com" # IMAP username
|
|
IMAP_PASSWORD="password" # IMAP password
|
|
IMAP_SERVER="imap.example.com" # IMAP server address
|
|
IMAP_PORT=993 # IMAP port (default 993)
|
|
IMAP_TLS=true # Use secure TLS connection (true/false)
|
|
IMAP_AUTH_TIMEOUT=3000 # Authentication timeout in ms
|
|
IMAP_REFRESH_INTERVAL_SECONDS=60 # Refresh interval for checking new emails
|
|
IMAP_FETCH_CHUNK=200 # Number of UIDs per fetch chunk during initial load
|
|
IMAP_CONCURRENCY=6 # Number of concurrent fetch workers during initial load
|
|
|
|
# --- SMTP CONFIGURATION (for email forwarding) ---
|
|
SMTP_ENABLED=false # Enable SMTP forwarding functionality (default: false)
|
|
SMTP_HOST="smtp.example.com" # SMTP server address (e.g., smtp.gmail.com, smtp.sendgrid.net)
|
|
SMTP_PORT=465 # SMTP port (587 for TLS, 465 for SSL, 25 for unencrypted)
|
|
SMTP_SECURE=true # Use SSL (true for port 465, false for other ports)
|
|
SMTP_USER="noreply@48hr.email" # SMTP authentication username (also used as from address)
|
|
SMTP_PASSWORD="password" # SMTP authentication password
|
|
SMTP_FROM_NAME="48hr Email Service" # Display name for forwarded emails
|
|
|
|
# --- HTTP / WEB CONFIGURATION ---
|
|
HTTP_PORT=3000 # Port
|
|
HTTP_BASE_URL="http://localhost:3000" # Base URL for verification links (e.g., https://48hr.email)
|
|
HTTP_BRANDING=["48hr.email","CrazyCo","https://crazyco.xyz"] # ['service_title', 'company_name', 'company_url']
|
|
HTTP_DISPLAY_SORT=2 # Domain display sorting:
|
|
# 0 = no change,
|
|
# 1 = alphabetical,
|
|
# 2 = alphabetical + first item shuffled,
|
|
# 3 = shuffle all
|
|
HTTP_HIDE_OTHER=false # true = only show first domain, false = show all
|
|
|
|
# --- USER AUTHENTICATION & INBOX LOCKING ---
|
|
# Authentication System
|
|
USER_AUTH_ENABLED=false # Enable user registration/login system (default: false)
|
|
|
|
# Session Secret (shared for both locking and user sessions)
|
|
USER_SESSION_SECRET="change-this-secret-in-production" # Secret for session encryption (used for auth & locking)
|
|
|
|
# Database Paths
|
|
USER_DATABASE_PATH="./db/users.db" # Path to user database
|
|
LOCK_DATABASE_PATH="./db/locked-inboxes.db" # Path to lock database
|
|
|
|
# Feature Limits
|
|
USER_MAX_FORWARD_EMAILS=5 # Maximum verified forwarding emails per user
|
|
USER_MAX_LOCKED_INBOXES=5 # Maximum locked inboxes per user
|
|
LOCK_RELEASE_HOURS=720 # Auto-release locked inboxes after X hours of inactivity (default: 720 = 30 days)
|
|
|