@stacksjs/notifications v0.58.47
Stacks Notifications
Stacks Notifications is a unified driver system for sending messages/notifications. It supports sending emails, SMS messages, and chat messages.
โ๏ธ Features
- ๐ฆ Send Emails
- ๐จ Email Styling
- ๐ฑ Send SMS messages
- ๐ฌ Send Chat messages
TODO
- Driver: SNS (Push)
- Driver: Pushwoosh
๐ค Usage
bun install -d @stacksjs/notificationsSet these variables in your env:
NOTIFICATION_TYPE=email
NOTIFICATION_DRIVER=sendgridYou may now use it in your project:
import { notification } from '@stacksjs/notifications'
notification.send(options)๐๏ธ Drivers
There are different option types for Chat, Email, and SMS drivers. To use any driver, simply configure the notification options object.
interface ChatOptions {
providerName?: 'discord' | 'slack'
webhookUrl: string
content: string
}
interface EmailOptions {
providerName?: 'sendgrid' | 'emailjs' | 'mailjet' | 'mandrill' | 'netcore' | 'nodemailer' | 'postmark' | 'ses'
to: string | string[]
subject: string
html: string
from?: string
text?: string
attachments?: AttachmentOptions[]
id?: string
}
interface SMSOptions {
providerName?: 'gupshup' | 'nexmo' | 'plivo' | 'sms77' | 'sns' | 'telnyx' | 'termii' | 'twilio'
to: string
content: string
from?: string
attachments?: AttachmentOptions[]
id?: string
}Available drivers are listed below, with the proper variables needed to get started.
Email drivers are configured with the following environment variables:
Sendgrid
SENDGRID_API_KEY=SG123
SENDGRID_FROM=from@example.com
SENDGRID_SENDER_NAME=SenderMailgun
MAILGUN_API_KEY=MG123
MAILGUN_DOMAIN=example.com
MAILGUN_USERNAME=username
MAILGUN_FROM=from@example.comMailjet
MAILJET_API_KEY=MJ123
MAILJET_API_SECRET=MJTESTSECRET
MAILJET_FROM_EMAIL=from@example.comNetcore
NETCORE_API_KEY=NC123
NETCORE_FROM=from@example.comNodemailer
NODEMAILER_FROM_EMAIL=from@example.com
NODEMAILER_HOST=example.com
NODEMAILER_USERNAME=username
NODEMAILER_PASSWORD=password
NODEMAILER_PORT=25
NODEMAILER_SECURE=truePostmark
POSTMARK_API_KEY=PM123
POSTMARK_FROM=from@example.comAWS SES
SES_REGION=US
SES_ACCESS_KEY_ID=testkey123
SES_SECRET_ACCESS_KEY=testaccesskey123
SES_FROM=from@example.comMandrill
MANDRILL_API_KEY=Ma123
MANDRILL_EMAIL=from@example.comEmailJS
MAIL_FROM_ADDRESS=from@example.com
EMAILJS_HOST=example.com
EMAILJS_USERNAME=username
EMAILJS_PASSWORD=password
EMAILJS_PORT=25
EMAILJS_SECURE=trueSMS
SMS drivers are configured with the following environment variables:
Twilio
TWILIO_ACCOUNT_SID=ACtest
TWILIO_AUTH_TOKEN=testtoken
TWILIO_FROM_NUMBER=+112345
TWILIO_TO_NUMBER=+145678Nexmo
VONAGE_API_KEY=VN123
VONAGE_API_SECRET=testkey
VONAGE_FROM_NUMBER=+112345Gupshup
GUPSHUP_USER_ID=GU123
GUPSHUP_PASSWORD=passwordPlivo
PLIVO_ACCOUNT_ID=PA123
PLIVO_AUTH_TOKEN=testtoken
PLIVO_FROM_NUMBER=+112345SMS77
SMS77_API_KEY=SA123
SMS77_FROM=from@example.comSNS
SMS77_API_KEY=SA123
SMS77_FROM=from@example.comTelnyx
TELNYX_API_KEY=TA123
TELNYX_MESSAGE_PROFILE_ID=testprofileid
TELNYX_FROM=from@example.comTermii
TERMII_API_KEY=TermA123
TERMII_SENDER=from@example.comChat
Chat drivers are configured with the following environment variables:
Discord
- None
Slack
SLACK_APPLICATION_ID=SAID123
SLACK_CLIENT_ID=SCID123
SLACK_SECRET_KEY=SSK123Learn more in the docs.
๐งช Testing
bun test๐ Changelog
Please see our releases page for more information on what has changed recently.
๐ Contributing
Please review the Contributing Guide for details.
๐ Community
For help, discussion about best practices, or any other conversation that would benefit from being searchable:
For casual chit-chat with others using this package:
Join the Stacks Discord Server
๐๐ผ Credits
Many thanks to the following core technologies & people who have contributed to this package:
๐ License
The MIT License (MIT). Please see LICENSE for more information.
Made with ๐
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
1 year ago
1 year ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago