
Research
Two Malicious Rust Crates Impersonate Popular Logger to Steal Wallet Keys
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
@weweb/backend-resend
Advanced tools
A WeWeb backend integration for Resend's email API, providing robust email sending capabilities within WeWeb backend workflows. This integration uses the official resend
package for reliable email delivery with features like HTML templates, attachments, and tracking.
This package is designed to work with the WeWeb Supabase Backend Builder and Deno.
import { serve } from '@weweb/backend-core';
import { createResendIntegration } from '@weweb/backend-resend';
import type { BackendConfig } from '@weweb/backend-core';
import { serve } from '@weweb/backend-core';
import Resend from '@weweb/backend-resend';
// Define your backend configuration
const config: BackendConfig = {
workflows: [
// Your workflows here
],
integrations: [
// Use the default Resend integration
Resend,
// Or add other integrations
],
production: false,
};
// Start the server
const server = serve(config);
You can customize the Resend client by using the createResendIntegration
function:
import { createResendIntegration } from '@weweb/backend-resend';
// Create a custom Resend integration
const customResend = createResendIntegration({
apiKey: 're_123456789', // Override environment variable
});
If not specified, the integration will use the following environment variable:
RESEND_API_KEY
- Your Resend API KeySend transactional emails to one or multiple recipients.
// Example workflow action
const config = {
type: 'action',
id: 'send_welcome_email',
actionId: 'resend.send_email',
inputMapping: [
{
from: 'onboarding@yourdomain.com',
to: '$body.email',
subject: 'Welcome to Our Platform',
html: '<h1>Welcome!</h1><p>Thank you for signing up.</p>',
text: 'Welcome! Thank you for signing up.'
}
]
};
Retrieve details about a sent email.
// Example workflow action
const config = {
type: 'action',
id: 'get_email_details',
actionId: 'resend.get_email',
inputMapping: [
{
id: '$body.emailId'
}
]
};
Get a list of all sent emails with pagination support.
// Example workflow action
const config = {
type: 'action',
id: 'list_recent_emails',
actionId: 'resend.list_emails',
inputMapping: [
{
limit: 20
}
]
};
Add a new domain to your Resend account.
// Example workflow action
const config = {
type: 'action',
id: 'add_new_domain',
actionId: 'resend.create_domain',
inputMapping: [
{
name: 'marketing.yourdomain.com',
region: 'us-east-1'
}
]
};
Get a list of all domains in your Resend account.
// Example workflow action
const config = {
type: 'action',
id: 'get_all_domains',
actionId: 'resend.list_domains',
inputMapping: [{}]
};
import type { BackendConfig } from '@weweb/backend-core';
import { serve } from '@weweb/backend-core';
import Resend from '@weweb/backend-resend';
const config: BackendConfig = {
workflows: [
{
path: '/send-email',
methods: ['POST'],
security: {
accessRule: 'public',
},
inputsValidation: {
body: {
type: 'object',
properties: {
to: { type: 'string' },
subject: { type: 'string' },
message: { type: 'string' },
template: { type: 'string', enum: ['welcome', 'password_reset', 'invoice'] }
},
required: ['to', 'subject', 'message', 'template'],
},
},
workflow: [
{
type: 'action',
id: 'send_email',
actionId: 'resend.send_email',
inputMapping: [
{
from: 'support@yourdomain.com',
to: '$body.to',
subject: '$body.subject',
html: `
{{#if (eq $body.template 'welcome')}}
<h1>Welcome to Our Service</h1>
{{else if (eq $body.template 'password_reset')}}
<h1>Password Reset Request</h1>
{{else if (eq $body.template 'invoice')}}
<h1>Your Invoice</h1>
{{/if}}
<div>{{$body.message}}</div>
<footer>© Your Company 2025</footer>
`,
text: '$body.message'
},
],
},
],
},
],
integrations: [Resend],
production: false,
};
console.log('Starting email service on http://localhost:8000/send-email');
serve(config);
This integration uses the official Resend client and requires a Resend API key to function:
You can get your API key from the Resend Dashboard.
RESEND_API_KEY
environment variable or provide it in the configurationResend offers features like:
For full details, see Resend's documentation.
FAQs
Resend integration for WeWeb backend services
We found that @weweb/backend-resend demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers 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
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.