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:
- Use
packages/backend/convex/email/index.ts. - Create notification rows first.
- Schedule provider delivery from a Convex action or internal background path.
- Patch
emailDeliverytosent,failed, orskipped. - Do not block the user-facing mutation on the email provider call.
This keeps in-app notifications reliable even when email is not configured.