Package Exports
- email-sentry
- email-sentry/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (email-sentry) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
📧 email-sentry
email-sentry is a lightweight and production-ready utility to:
- ✅ Validate email format
- 🚫 Detect disposable/temp email domains
- 📩 Normalize Gmail aliases, e.g.
user+promo@gmail.com→user@gmail.comE.X.A.M+test@gmail.com→example@gmail.comUser.Name+second@yahoo.com→user.name@yahoo.com(dots preserved in some clients)
Updates
1.0.2 version- supports only the Gmail normalization
- Contains 4.0k disposable domain name to validate
1.1.0 version- supports @gmail.com, @yahoo.com, @outlook.com, @hotmail.com, @live.com, @msn.com, @icloud.com, @protonmail.com, @zoho.com (now a wide range to protect your website from spoofing and fake accounts)
- Contains 4.5k disposable domain name to validate
Features
- Simple API
- Tiny & dependency-light
- Helps prevent spam/bots during user signups
- Supports thousands of disposable email providers
- Built in TypeScript (fully typed)
Installation
npm install email-sentry
# or
yarn add email-sentryUsage
import { emailSentry } from "email-sentry";
const result = emailSentry("user+promo@mailinator.com", {
validate: true,
checkDisposable: true,
normalizeGmailAliases: true, //deprecated
normalizeEmail: true // Use this instead of normalizeGmailAliases
});
/*
normalizeGmailAliases and normalizeEmail gives the same result
*/
console.log(result);
/*
{
inputEmail: 'user+promo@mailinator.com',
success: true,
isValid: true,
isDisposable: true,
outputEmail: 'user@gmail.com'
}
*/Options
| Option | Type | Description |
|---|---|---|
validate |
boolean |
Validates email using the powerful email validator package |
checkDisposable |
boolean |
Checks against known disposable email domains, contains 5000+ disposable domains data |
@deprecated normalizeGmailAliases |
boolean |
Removes +something from Gmail addresses and prevent the same email address to use to create account, use normalizeEmail instead |
normalizeEmail |
boolean |
Removes +something from All email clients like yahoo, zoho, msn, outlook and more client email addresses and prevent the same email address to use to create account |
Testing
Run all tests with:
npm testOr watch mode:
npm run test:watchLicense
MIT © Yashraj
Author
Made with ❤️ by Yashraj
If you like this project, consider ⭐️ starring the repo or sharing it. It helps a lot!