Email Testing
This guide explains how to test email functionality in Plugged.in using Mailtrap for development and staging environments.Quick Setup with Mailtrap
1
Create Mailtrap Account
Sign up for a free account at Mailtrap.io
2
Get SMTP Credentials
Navigate to Inboxes → Select inbox → SMTP Settings → Choose Nodemailer
3
Configure Environment
4
Test Email Delivery
Email Templates
Plugged.in includes responsive HTML email templates for various notifications:Verification Email
Sent when users register to verify their email address
Password Reset
Sent when users request a password reset
Notifications
Activity alerts and system notifications
Welcome Email
Onboarding email for new users
Development Setup
1. Install Dependencies
Ensure email dependencies are installed:2. Configure Mailtrap
- Using UI
- Using API
- Log into Mailtrap Dashboard
- Navigate to Inboxes
- Click on your inbox
- Copy SMTP credentials
- Select Nodemailer integration
3. Environment Configuration
Create or update.env.local:
4. Test Email Functionality
Using Application Forms
- Password Reset: Visit
/forgot-password - User Registration: Visit
/register - Email Verification: Complete registration flow
Using Test Endpoint
Email Template Customization
Template Structure
All email templates follow this structure:Customizing Templates
Edit email templates inlib/email.ts:
Logo Customization
Logos are embedded as base64 to ensure display even when images are blocked.
- Maximum size: 30KB (to avoid email size issues)
- Recommended dimensions: 200x50px
- Format: PNG with transparency or JPEG
- Optimize before converting to base64
Testing Strategies
Unit Testing
Integration Testing
Production Email Services
Supported Providers
- SendGrid
- AWS SES
- Mailgun
- Gmail
Production Checklist
Email Debugging
Common Issues
Emails not appearing in Mailtrap
Emails not appearing in Mailtrap
Solutions:
- Verify Mailtrap credentials in
.env - Check console for error messages
- Ensure
EMAIL_SERVER_PORTis 2525 (not 25 or 587) - Test connection with telnet:
telnet sandbox.smtp.mailtrap.io 2525
Connection timeout errors
Connection timeout errors
Solutions:
- Check firewall settings
- Verify network allows outbound SMTP
- Try alternative ports (2525, 587, 465)
- Use secure connection:
EMAIL_SERVER_SECURE=true
Authentication failed
Authentication failed
Solutions:
- Regenerate Mailtrap credentials
- Ensure no extra spaces in credentials
- Check for special characters that need escaping
- Verify account is active and not suspended
Images not displaying
Images not displaying
Solutions:
- Use base64 embedded images
- Keep image size under 30KB
- Test in multiple email clients
- Provide alt text for accessibility
Debug Mode
Enable detailed logging:Testing Tools
Mailtrap
Safe email testing sandbox
mailtrap.io
Mail Tester
Spam score analysis
mail-tester.com
Litmus
Email client preview testing
litmus.com
Email on Acid
Comprehensive email testing
emailonacid.com
API Reference
Test Email Endpoint
Email Service Methods
Support
For email testing assistance:- Documentation: docs.plugged.in
- Mailtrap Support: help.mailtrap.io
- GitHub Issues: Report issues

