
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
@webtre/nestjs-mailer-react-adapter
Advanced tools
Build and send emails in Nest framework using React.js
📨 Build and send emails in Nest framework using React.js
🦾 Write your email templates in React and TypeScript
📬 No more template not found / sending blank emails.
🔰 No more missing context / variables from template.
🧪 Write testable templates intended for email clients.
💌 Built on top of react-email
— the next generation of writing emails.
This library is an adapter for the
@nestjs-modules/mailer
module, so we'll install the dependencies alongside by running the command below.
npm i @webtre/nestjs-mailer-react-adapter @nestjs-modules/mailer nodemailer
To add support for React
to your project, modify tsconfig.json
{
"compilerOptions": {
// add this line
"jsx": "react-jsx"
}
}
// src/app.module.ts
import { Module } from "@nestjs/common";
import { MailerModule } from "@nestjs-modules/mailer";
import { ReactAdapter } from "@webtre/nestjs-mailer-react-adapter";
@Module({
imports: [
MailerModule.forRoot({
transport: {
host: "smtp.domain.com",
port: 2525,
secure: false,
auth: {
user: "user@domain.com",
pass: "password",
},
},
defaults: {
from: '"Webtre Technologies" <hello@domain.com>',
},
template: {
dir: __dirname + "/templates",
// Use the adapter
adapter: new ReactAdapter(),
// Or with optional config
adapter: new ReactAdapter({
pretty: false,
plainText: true,
htmlToTextOptions: {
wordwrap: 130,
limits: {
ellipsis: "...",
},
},
}),
},
}),
],
})
export class AppModule {}
To see more options that can be passed to the htmlToTextOptions
object, click here.
import { Injectable } from '@nestjs/common';
import { MailerService } from '@nestjs-modules/mailer';
@Injectable()
export class ExampleService {
constructor(private readonly mailerService: MailerService) {}
async public example(): Promise<void> {
await this.mailerService
.sendMail({
to: 'john@domain.com',
subject: 'Testing react template',
template: 'welcome', // The compiled extension is appended automatically.
context: { // Data to be passed as props to your template.
code: '123456',
name: 'John Doe',
},
});
}
}
// src/templates/welcome.tsx
interface Props {
code: string;
name: string;
}
export default function Welcome({ name, code }: Props) {
return (
<div>
Hi {name}, thanks for signing up. Your code is {code}
</div>
);
}
You could also check the examples folder in this repo for a working usage example and how to set it up with SWC using gulp.
react-email
— build and send emails using React@nestjs-modules/mailer
— a mailer module for Nest framework (node.js)MIT License © 2022 Webtre Technologies
FAQs
Build and send emails in Nest framework using React.js
The npm package @webtre/nestjs-mailer-react-adapter receives a total of 1,414 weekly downloads. As such, @webtre/nestjs-mailer-react-adapter popularity was classified as popular.
We found that @webtre/nestjs-mailer-react-adapter demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.