nestjs-resend
v1.0.1
Published
NestJS provider for sending emails with resend
Downloads
5,192
Maintainers
Readme
Features
- send email
- send batch emails
Installation
# npm
$ npm install nestjs-resend
# yarn
$ yarn add nestjs-resend
# pnpm
$ pnpm add nestjs-resend
Usage
Importing module
import { ResendModule } from 'nestjs-resend';
@Module({
imports: [
ResendModule.forRoot({
apiKey: 'your resend api key',
}),
],
providers: [],
exports: [],
})
Importing module async
import { ResendModule } from 'nestjs-resend';
@Module({
imports: [
ResendModule.forRootAsync({
useFactory: async () => ({
apiKey: 'your resend api key',
})
}),
],
providers: [],
exports: [],
})
Interfaces
interface Options {
apiKey: string
}
Send Email
import { ResendService } from 'nestjs-resend';
@Injectable()
export class YourService {
constructor(private readonly resendService: ResendService) {
// text
await this.resendService.send({
from: '[email protected]',
to: '[email protected]',
subject: 'hello world',
text: 'it works!',
});
// html
await this.resendService.send({
from: '[email protected]',
to: '[email protected]',
subject: 'hello world',
html: '<strong>it works!</strong>',
});
// react
await this.resendService.send({
from: '[email protected]',
to: '[email protected]',
subject: 'hello world',
react: <EmailTemplate firstName="John" product="MyApp" />,
});
// To include a friendly name, use the format "Your Name <[email protected]>"
await this.resendService.send({
from: 'Your Name <[email protected]>',
to: '[email protected]',
subject: 'hello world',
react: <EmailTemplate firstName="John" product="MyApp" />,
});
}
Send Batch Emails
import { ResendService } from 'nestjs-resend';
@Injectable()
export class YourService {
constructor(private readonly resendService: ResendService) {
await this.resendService.sendBatch([
// text
{
from: '[email protected]',
to: '[email protected]',
subject: 'hello world',
text: 'it works!',
},
// html
{
from: '[email protected]',
to: '[email protected]',
subject: 'hello world',
html: '<strong>it works!</strong>',
},
// react
{
from: '[email protected]',
to: '[email protected]',
subject: 'hello world',
react: <EmailTemplate firstName="John" product="MyApp" />,
},
// To include a friendly name, use the format "Your Name <[email protected]>"
{
from: 'Your Name <[email protected]>',
to: '[email protected]',
subject: 'hello world',
react: <EmailTemplate firstName="John" product="MyApp" />,
}
]);
}
License
Nestjs-Resend is MIT licensed.