UNPKG

node-email-validator

Version:

This is a npm package that checks if email is valid or not and also raises a flag if an email ID is temporary, belongs to a private org or that mail server is not used much.

53 lines (42 loc) 1.94 kB
# node-email-validator This npm package checks that whether an email address is a valid email address or not by checking the MX records. It also has a statistics based check that whether an email address has a possibility of being a `temporary email`, `email belonging to a private organization` or that `mail server is not used much in that region`. It also checks if the email address structure follows `RFC 5322 Official Standard` or not. ## How to install? * Just run the following statement. ```javascript npm install node-email-validator ``` or ```javascript npm i node-email-validator ``` ## How to use it? * Given below is an example on how to use this package. ```javascript var nev = require('node-email-validator'); nev('username@mail-server.extension').then(validation => {console.log(validation);}).catch(error => console.log(error)); ``` * The output for this is as follows. ```json { user: 'xukrlrll', domain: 'sharklasers.com', isEmailValid: true, mxRecords: [ { exchange: 'mail.guerrillamail.com', priority: 0 } ], possibility: true, timeout: false } ``` ## What is present in the response? * `user` - This contains the username part of the email address. * `domain` - This contains the domain part of the email address. * `isEmailValid` - This returns `true` or `false` depending on the validity of the email address. * `mxRecords` - It contains the MX records which are dictionaries of `exchange` and `priority` or `[]` if nothing is present. * `probability` - This returns `true` or `false` depending on the possibility of an email address being a `temporary email`, `email belonging to a private organization` or that `mail server is not used much in that region`. * `timeout` - This returns `true` or `false` depending on the fact that the query caused timeout or not. ## How to run tests? * For running the tests, run the following command. ```javascript npm test ``` ## License [ISC](./LICENSE)