Skip to content
A RFC compliant Email validator ✉️
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
spec
src
.gitignore
.travis.yml
CHANGELOG
LICENSE
README.md
shard.yml

README.md

Migrated to https://git.sceptique.eu/Sceptique/CrystalEmail

A RFC compliant Email validator

Prelude

Compliance

To do

  • To do : rfc 6530.
  • To do : Implement IPv6

Notes

  • No ipv6 for now
  • No escaped characters
  • Public email validity (no raw ip, domain withour root domain, ...)

Installation

Works with crystal 0.17 - 0.27.0

Add this to your application's shard.yml:

dependencies:
  CrystalEmail:
      github: Nephos/CrystalEmail

## Usage in Crystal

require "CrystalEmail"

# Pure Rfc5322
CrystalEmail::Rfc5322.validates? "toto@tata" # => true
CrystalEmail::Rfc5322.match "toto@tata" # => #<MatchData "toto@tata" local:"toto" domain:"tata">
CrystalEmail::Rfc5322.validates? "toto" # => false
CrystalEmail::Rfc5322.match "toto" # => nil

# Rfc5322 + Internet basic usage
CrystalEmail::Rfc5322::Public.validates? "toto@tata.com" # => true
CrystalEmail::Rfc5322::Public.match "toto@tata.com" # => #<MatchData "toto@tata" local:"toto" domain:"tata.com">

"toto@toto.toto".is_email? # => true

Contributes !

Find a bug ? Want a new feature ? Create a clear pull request and we'll see :)

  • Nephos (poulet_a)
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.