Leave Localhost logoLeave LocalhostDocs
Notifications

Email Notifications

Notification preferences include an email channel and notification rows store an emailDelivery state. The starter does not send notification emails automatically.

Notification preferences include an email channel and notification rows store an emailDelivery state. The starter does not send notification emails automatically.

Existing transactional emails remain separate:

  • magic links
  • organization invitations
  • sensitive-action verification codes

To add email delivery:

  1. Use packages/backend/convex/email/index.ts.
  2. Create notification rows first.
  3. Schedule provider delivery from a Convex action or internal background path.
  4. Patch emailDelivery to sent, failed, or skipped.
  5. Do not block the user-facing mutation on the email provider call.

This keeps in-app notifications reliable even when email is not configured.