Email: - Add nodemailer; rewrite lib/email.ts to send via configured SMTP (Proton Mail Bridge) first, Resend fallback, then dev simulation. - Forward SMTP_* env to web and add protonmail-bridge service in compose. - Document Proton Bridge SMTP vars in .env.example files; add test-smtp.mjs. Apply: - OneClickApplyModal now opens the job's real posting URL (company/ATS site) in a new tab as the primary action when jobUrl is present, and records the external application so the card shows 'Applied'. - Internal one-click snapshot flow retained for jobs without an external URL. - POST /api/applications accepts external:true (skips profile completeness) and records an external application.
42 lines
1.9 KiB
Text
42 lines
1.9 KiB
Text
# =================================================================
|
|
# JobsBoard Production Environment Configuration
|
|
# =================================================================
|
|
|
|
# Database (PostgreSQL container credentials)
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_PASSWORD=replace_with_a_secure_password
|
|
POSTGRES_DB=jobsboard
|
|
DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public
|
|
|
|
# Application URLs, Ports & Authentication
|
|
WEB_PORT=3000
|
|
DB_PORT=5432
|
|
NEXTAUTH_SECRET=replace_with_a_random_32_char_secret_string
|
|
NEXTAUTH_URL=http://localhost:3000
|
|
NODE_ENV=production
|
|
|
|
# Scraper Interval & Optional Proxy Configuration
|
|
SCRAPE_INTERVAL_MINUTES=30
|
|
# SOCKS5_PROXY=socks5://username:password@host:port
|
|
# PROXY_URL=http://username:password@host:port
|
|
|
|
# =================================================================
|
|
# Outbound Email via Proton Mail Bridge (SMTP relay)
|
|
# =================================================================
|
|
# The web app sends mail through the `protonmail-bridge` container, which is a
|
|
# local SMTP relay for your Proton account. Set these to the Bridge login:
|
|
# SMTP_USER = your Proton login email (e.g. you@proton.me)
|
|
# SMTP_PASS = the Proton Mail Bridge app-password (NOT your account password)
|
|
# generate it at Proton > Settings > Bridge/IMAP/SMTP
|
|
# SMTP_FROM = a sending address you own in Proton (your custom domain)
|
|
# A one-time `docker compose run -it protonmail-bridge` login is required to
|
|
# persist the Bridge credentials in the protonmail_bridge_data volume.
|
|
SMTP_HOST=protonmail-bridge
|
|
SMTP_PORT=25
|
|
SMTP_USER=you@proton.me
|
|
SMTP_PASS=your-proton-bridge-app-password
|
|
SMTP_FROM="JobsBoard <notifications@yourdomain.com>"
|
|
# Optional: passphrase protecting the Bridge GPG keyring (recommended)
|
|
BRIDGE_KEYRING_PASSPHRASE=replace_with_a_secure_passphrase
|
|
# Host port to reach the Bridge SMTP for local testing (container-internal is 25)
|
|
BRIDGE_SMTP_PORT=1025
|