Git Product home page Git Product logo

epistula's Introduction

Epistula

Epistula is an open-source project written in golang to check whether an email is valid or not.

How does it work?

Epistula follows the following techniques :

Syntax validation

This check verifies that the email address has the correct format, including the correct characters for the username and domain, as well as the correct number of @ symbols, periods, and other special characters.

Domain validation:

This check verifies that the domain of the email address exists and is registered.

SMTP validation

This check uses the Simple Mail Transfer Protocol (SMTP) to send a test message to the email address and checks for a successful delivery.

Email pattern validation

This check verifies that the email address is not a disposable email address, which are often used for temporary or throwaway email addresses.

There are several patterns that email validation services use to detect disposable email addresses (DEA), also known as temporary or throwaway email addresses. Here are a few examples:

  • Domain-based pattern: This pattern checks if the email address uses a domain that is known to be associated with disposable email addresses. For example, email addresses that use domains such as "mailinator.com", "guerrillamail.com", or "temp-mail.org" are likely to be disposable email addresses.

  • Recency-based pattern: This pattern checks if the email address was recently created. Disposable email addresses are often created on-the-fly and are not used for very long, so email addresses that are less than a certain age (e.g. a week old) are more likely to be disposable.

  • Character-based pattern: This pattern checks if the email address has certain characteristics that are commonly associated with disposable email addresses. For example, email addresses that have a large number of random characters or that use numbers as placeholders are more likely to be disposable.

  • Email pattern validation: This pattern check verifies that the email address is not a disposable email address, which are often used for temporary or throwaway email addresses.

These patterns are not foolproof and that some legitimate email addresses may be incorrectly flagged as disposable email addresses. Additionally, the disposable email providers are always changing and the list of domains can change over time.

epistula's People

Contributors

mahmoudashours avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.