feat(smtp): add email/SMTP configuration and sending #18

Closed
Gravity Bot wants to merge 0 commits from feature/164-smtp-setup into release/v0.3.1
Contributor

Summary

Add admin SMTP settings page with full email configuration and test sending.

  • Admin page at /admin/smtp with server config (host, port, security, auth), credentials, sender info, enable toggle
  • Test email feature via htmx inline swap
  • EmailService with TLS/STARTTLS/plain connection modes and PLAIN/LOGIN/CRAM-MD5 auth
  • Environment variable override (GASHY_SMTP_*) — UI shows read-only when env-configured
  • Database migration adding 9 SMTP columns to app_settings

Closes OP#164

Test Plan

  • Admin SMTP page renders with all form fields
  • Save SMTP settings persists to database
  • Test email sends successfully with valid SMTP config
  • Env var override disables form fields and shows info banner
  • STARTTLS, TLS, and plain connection modes work
  • Invalid config shows meaningful error on test send
## Summary Add admin SMTP settings page with full email configuration and test sending. - Admin page at `/admin/smtp` with server config (host, port, security, auth), credentials, sender info, enable toggle - Test email feature via htmx inline swap - `EmailService` with TLS/STARTTLS/plain connection modes and PLAIN/LOGIN/CRAM-MD5 auth - Environment variable override (`GASHY_SMTP_*`) — UI shows read-only when env-configured - Database migration adding 9 SMTP columns to `app_settings` Closes OP#164 ## Test Plan - [ ] Admin SMTP page renders with all form fields - [ ] Save SMTP settings persists to database - [ ] Test email sends successfully with valid SMTP config - [ ] Env var override disables form fields and shows info banner - [ ] STARTTLS, TLS, and plain connection modes work - [ ] Invalid config shows meaningful error on test send
feat(smtp): add email/SMTP configuration and sending
All checks were successful
CI / test (pull_request) Successful in 1m42s
CI / security (pull_request) Successful in 1m47s
CI / build (pull_request) Successful in 1m50s
CI / lint (pull_request) Successful in 2m33s
c53233f35d
Add admin SMTP settings page with server config (host, port, security,
auth), credentials, sender info, enable toggle, and test email feature.
Supports env var override (GASHY_SMTP_*) with read-only UI when
env-configured. Implements EmailService with TLS/STARTTLS/plain modes.

Refs OP#164

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Gravity Bot closed this pull request 2026-02-17 21:20:19 +00:00
All checks were successful
CI / test (pull_request) Successful in 1m42s
CI / security (pull_request) Successful in 1m47s
CI / build (pull_request) Successful in 1m50s
CI / lint (pull_request) Successful in 2m33s

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
mike/gashy!18
No description provided.