addy: A full-featured library for parsing, validating, and rendering email addresses

[ bsd2, library, text ] [ Propose Tags ] [ Report a vulnerability ]

A modern library for working with email addresses. This package can be used to validate user input or handle various flavors of addresses that appear in places such as mail messages.

Email addresses can be decoded, manipulated, then rendered back to text using the simple local-part@domain format or the more complete syntax that allows for display names and comments.

Comprehensive documentation can be found in the Addy module.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.0.1
Change log CHANGES.md
Dependencies attoparsec (>=0.13 && <0.14), base (>=4.9 && <5.0), bytestring (>=0.10 && <0.12), ip (>=1.5.1 && <1.8), lens (>=4.17 && <5.0), relude (>=0.6 && <0.8), text (>=1.2 && <1.3), text-icu (>=0.7 && <0.8), validation-selective (>=0.1 && <0.2) [details]
Tested with ghc ==8.6.5 || ==8.8.4 || ==8.10.2
License BSD-2-Clause
Copyright Copyright (c) 2019-2020 Peter Jones
Author Peter Jones <pjones@devalot.com>
Maintainer Peter Jones <pjones@devalot.com>
Category Text
Home page https://github.com/pjones/addy
Bug tracker https://github.com/pjones/addy/issues
Source repo head: git clone https://github.com/pjones/addy.git
Uploaded by PeterJones at 2020-10-29T19:53:37Z
Distributions
Downloads 350 total (3 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2020-10-29 [all 1 reports]

Readme for addy-0.1.0.1

[back to package description]

Addy: a modern library for working with email addresses

CI GitHub tag (latest by date) Hackage GitHub

A full-featured library for parsing, validating, and rendering email addresses.

Decoding

Addy.decode "example@example.com"
-- Right (EmailAddr "example@example.com")

Addy.decode "我買@屋企.香港"
-- Right (EmailAddr "\25105\36023@\23627\20225.\39321\28207")

Addy.decode "Mary Smith <mary@example.net> (hi there!)"
-- Right (EmailAddr "Mary Smith <mary@example.net> (hi there!)")

Addy.decode "example@[127.0.0.1]"
-- Right (EmailAddr "example@[127.0.0.1]")

Encoding

Addy.encode address
-- "example@example.com"

Addy.decode "Mary Smith <mary@example.net> (hi there!)"
  & second Addy.encodeFull
-- Right "Mary Smith <mary@example.net> (hi there!)"