Skip to content

saishmungase/fastforwardit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

29 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“ง FastForwardIt

npm version npm downloads weekly downloads license bundle size typescript

A lightweight, flexible mailing utility built on top of Nodemailer

Send direct, bulk, templated emails, manage groups, schedule delivery, and handle attachments โ€” all with a simple, customizable API.

๐Ÿ“š Documentation โ€ข ๐Ÿš€ Quick Start โ€ข ๐Ÿ’ก Installation โ€ข ๐Ÿค Open For Contribution

๐Ÿ“Š Package Stats & Trends

๐Ÿ“ˆ Real-time NPM Statistics

๐Ÿ”— NPM Package Stats (npm-stat.com)
๐Ÿ”— Download Trends (npmtrends.com)


๐Ÿ“Œ Metric ๐Ÿ”ข Current Value
๐Ÿ“ฆ Current Version npm version
๐Ÿ“ฅ Total Downloads total downloads
๐Ÿ“… Weekly Downloads weekly downloads
๐Ÿ“ฆ Bundle Size bundle size
๐Ÿ“„ License license

๐Ÿ“Š View detailed analytics:
npm-stat โ€ข npmtrends โ€ข bundlephobia


โœจ Features

๐Ÿ“ฎ Email Types

  • โœ‰๏ธ Direct emails (text & HTML)
  • ๐Ÿ“ Template-based emails with variables
  • ๐Ÿ“ข Bulk personalized emails
  • ๐Ÿ“Ž Attachment support (files, images, PDFs)

โš™๏ธ Advanced Features

  • ๐Ÿ‘ฅ Group management for teams & bulk sends
  • โฐ Scheduled & recurring emails
  • ๐Ÿ”„ Retry mechanism with exponential backoff
  • ๐Ÿงช Built-in test method for quick verification

๐Ÿ“ฆ Installation

Choose your preferred package manager:

# Using npm
npm install fastforwardit

# Using yarn
yarn add fastforwardit

# Using pnpm
pnpm add fastforwardit

โšก Quick Start

Send your first email in just a few lines:

import { Mail } from "fastforwardit";

async function main() {
  const mailer = new Mail({
    transporterOptions: {
      service: "gmail",
      auth: {
        user: process.env.EMAIL_USER,   // your email
        pass: process.env.EMAIL_PASS,   // your app password
      },
    },
    defaultFrom: process.env.EMAIL_USER,
  });

  await mailer.send({
    to: "receiver@example.com",
    subject: "Hello from FastForwardIt ๐Ÿ‘‹",
    text: "This is a test email sent using FastForwardIt library.",
  });

  console.log("โœ… Email sent successfully!");
}

main().catch(console.error);

๐Ÿ’ก Tip: For more advanced examples, check out our Getting Started Guide


๐Ÿ”ง Key Use Cases

๐Ÿ“ Template-based Emails
await mailer.sendTemplate({
  to: "user@example.com",
  template: "welcome",
  variables: { 
    name: "John Doe", 
    company: "Acme Corp" 
  }
});
๐Ÿ‘ฅ Group Management
// Create groups and send bulk emails
await mailer.createGroup("team", ["john@company.com", "jane@company.com"]);
await mailer.sendToGroup("team", {
  subject: "Weekly Update",
  html: "<h1>Hello Team!</h1>"
});
โฐ Scheduled Emails
// Schedule email for later
await mailer.schedule({
  to: "client@example.com",
  subject: "Scheduled Reminder",
  text: "This is your scheduled reminder!",
  sendAt: new Date("2024-12-25T10:00:00Z")
});

๐Ÿ”‘ Requirements

Requirement Version Notes
Node.js โ‰ฅ 16.x LTS recommended
Email Provider Any SMTP Gmail, Outlook, custom SMTP
Gmail Users App Password Required if 2FA is enabled

๐Ÿ“š Documentation

๐Ÿ“– Guide ๐Ÿ“„ Description
Getting Started Complete setup and basic usage
Installation Guide Detailed installation instructions
Documentation Full method documentation

๐ŸŒŸ Why FastForwardIt?

Simple API
Simple & Intuitive
Easy-to-use API that gets you started in minutes
High Performance
High Performance
Built on Nodemailer with optimized bulk sending
Flexible Templates
Flexible Templates
Support for dynamic templates and variables
Production Ready
Production Ready
Built-in retry mechanisms and error handling

๐Ÿค Contributing

We welcome contributions! Here's how you can help:

  1. ๐Ÿด Fork the repository
  2. ๐ŸŒฟ Create a feature branch (git checkout -b feature/amazing-feature)
  3. ๐Ÿ’ป Make your changes and add tests
  4. โœ… Run tests (npm test)
  5. ๐Ÿ“ Commit your changes (git commit -m 'Add amazing feature')
  6. ๐Ÿš€ Push to your branch (git push origin feature/amazing-feature)
  7. ๐Ÿ”„ Open a Pull Request

๐Ÿ› Found a Bug?

Please open an issue with:

  • Bug description
  • Steps to reproduce
  • Expected vs actual behavior
  • Environment details

๐Ÿ’ก Feature Requests

We'd love to hear your ideas! Open an issue and tell us about the feature you'd like to see.


๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ’ Built with โค๏ธ to make emailing faster & simpler

โญ Star this repo โ€ข ๐Ÿ“ฆ NPM Package โ€ข ๐Ÿ“Š Package Analytics โ€ข ๐Ÿฆ Follow us on Twitter


Made with ๐Ÿš€ by Saish

About

The Open Source Library for Different types of communication over the internet ( like email )

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors