lindell / go-burner-email-providers

A Go package for identifying burner/temporary/disposable emails

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

go-burner-email-providers

Go Reference Daily list sync Go Report Card

Go package that detects burner (temporary) emails based on the community maintained wesbos/burner-email-providers list. This repository is synced daily against that list.

It does currently contain 22,687 domains and the lookup is done with a hash set for instant results.

Installation

go get github.com/lindell/go-burner-email-providers

Usage

import (
    "github.com/lindell/go-burner-email-providers/burner"
)

func main() {
	isBurnerEmail := burner.IsBurnerEmail("test@temp-mail.org")
	fmt.Println(isBurnerEmail) // true

	isBurnerEmail = burner.IsBurnerEmail("johan@gmail.com")
	fmt.Println(isBurnerEmail) // false

	isBurnerDomain := burner.IsBurnerDomain("temp-mail.org")
	fmt.Println(isBurnerDomain) // true

	isBurnerEmail = burner.IsBurnerDomain("gmail.com")
	fmt.Println(isBurnerEmail) // false
}

Size

Since the list of domains is quite large, the binary size and memory usage is not insignificant.

The increase of using this package is:

Where Size diff
On Disc 0.64 Mb
Memory 0.62 Mb

About

A Go package for identifying burner/temporary/disposable emails

License:MIT License


Languages

Language:Go 100.0%