2.0.1 • Published 6 months ago

email-toolkit v2.0.1

Weekly downloads
-
License
agpl-3.0
Repository
github
Last release
6 months ago

Email Toolkit

A fast and efficient email validation toolkit built with Bun. This package provides utilities for:

  • Email format validation using regex
  • Disposable email detection with auto-updating domain list
  • Domain extraction and validation
  • Email existence checking via MX records and SMTP verification

Installation

bun add email-toolkit

Usage

import { EmailToolkit } from "email-toolkit";

const toolkit = new EmailToolkit();

// Comprehensive validation
const result = await toolkit.validateEmail("test@example.com");
console.log(result);
// {
// isValid: true,
// domain: "example.com",
// isDisposable: false,
// exists: true,
// hasValidMX: true
// }

// Individual utilities
toolkit.isValidEmail("test@example.com"); // true
toolkit.isDisposableDomain("temp-mail.org"); // true
toolkit.getDomain("test@example.com"); // "example.com"

Features

Comprehensive Validation

  • Format validation using robust regex patterns
  • MX record verification
  • SMTP connection testing (with fallback)
  • Disposable email domain detection

Performance

  • Built with Bun for optimal speed
  • MX record caching
  • Efficient domain lookup using Set
  • Minimal dependencies

API Reference

new EmailToolkit()

Creates a new toolkit instance.

validateEmail(email)

Performs comprehensive email validation including format, MX records, SMTP verification, and disposable domain detection.

isValidEmail(email)

Checks if email format is valid and has valid MX records.

isDisposableDomain(domain)

Checks if domain is known to be disposable.

getDomain(email)

Extracts and returns the domain from an email address.

2.0.1

6 months ago

2.0.0

6 months ago

1.0.0

6 months ago