npm.io
1.0.3 • Published 8 years ago

ssmith-is-valid-email

Licence
MIT
Version
1.0.3
Deps
0
Size
17 kB
Vulns
0
Weekly
0
Stars
5

ssmith-is-valid-email

A Robust Tool for Validating Emails

Codeship Status for ssmith-wombatweb/is-valid-email Code Coverage Dependencies npm version

Project Repo

This script checks the validity of a wide range of email types. It follows most of the rules outlined here: Email Address - Wikipedia. It was created because of performance issues with RegEx when working with emails in React.

Author

Written by Simeon Smith.

Portfolio | Resume | Github

Installation

npm i -S ssmith-is-valid-email

Using the Function

This function supports all modern browser including IE9+.

Importing
ES6 JS
import isValidEmail from 'ssmith-is-valid-email';
Common JS Import
const isValidEmail = require('ssmith-is-valid-email');
Calling the Function
isValidEmail('test@google.com');
// Returns true or false.

Testing

The following emails were tested. It follows most of the rules outlined here: Email Address - Wikipedia.

Valid Emails
simple@example.com
very.common@example.com
disposable.style.email.with+symbol@example.com
other.email-with-hyphen@example.com
user.name+tag+sorting@example.com
x@example.com
example-indeed@strange-example.com
example@s.example
admin@test.co
" "@example.org
Invalid Emails
Abc.example.com
@Abc.example.com
james@google
james@google.c
james richards@google.com
james" richards@google.com
james@cb$.com
A@b@c@example.com
a"b(c)d,e:f;g<h>i[j\\k]l@example.com
just"not"right@example.com
just."not"right@example.com
1234567890123456789012345678901234567890123456789012345678901234+x@example.com
john..doe@example.com
john.doe@example..com
Not Yet Supported
Should Be Valid
"very.(),:;<>[]\".VERY.\"very@\\ \"very\".unusual"@strange.example.com
Not Useful to Support
admin@mailserver1

Performance

This script will run 1000 times on a valid or invalid email in less than 20 milliseconds.

Keywords