fix: make email configuration optional end to end

Nodemailer already skips sending without credentials, but the welcome-email job
still logged "sent successfully" and the README and env checker listed the
Gmail variables as required. The job now reports skipped sends, and the docs and
check-env treat NODEMAILER_EMAIL/NODEMAILER_PASSWORD as optional.

Ported from #69 (its Nodemailer changes were already on main).

Closes #69

Co-authored-by: keshav-005 <keshavchaudhary0005@gmail.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ravixalgorithm
2026-09-25 15:30:53 +05:30
co-authored by keshav-005 Claude Opus 5.5
parent 0e69274a8c
commit c2e1067312
3 changed files with 21 additions and 15 deletions
+4 -3
View File
@@ -35,9 +35,6 @@ const requiredVars = {
// Inngest (Background jobs, cron, AI)
'INNGEST_SIGNING_KEY': 'Inngest signing key (required for Vercel deployment; get from Inngest dashboard)',
// Email (Nodemailer via Gmail)
'NODEMAILER_EMAIL': 'Gmail address for sending emails',
'NODEMAILER_PASSWORD': 'Gmail app password (use App Passwords if 2FA enabled; not your regular password)',
};
/**
@@ -45,6 +42,10 @@ const requiredVars = {
* These are checked and reported but won't cause failure.
*/
const optionalVars = {
// Email (Nodemailer via Gmail). Without it the app runs; welcome and news emails are disabled.
'NODEMAILER_EMAIL': 'Gmail address for sending emails',
'NODEMAILER_PASSWORD': 'Gmail app password (use App Passwords if 2FA enabled; not your regular password)',
// AI Providers (for Inngest workflows)
'GEMINI_API_KEY': 'Google Gemini API key (for AI-powered welcome emails and news summaries)',