# mailcheck/mailcheck

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/mailcheck-mailcheck).**

7,944 stars · 454 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/mailcheck/mailcheck
- awesome-repositories: https://awesome-repositories.com/repository/mailcheck-mailcheck.md

## Description

Mailcheck is an email domain suggestion library and validation utility designed to identify misspelled email addresses. It functions as a string similarity tool that calculates the distance between typed domains and known correct extensions to provide automated correction suggestions.

The library allows for the use of custom domain suggestion lists and the implementation of custom similarity and string distance logic. These mechanisms enable the replacement of default matching thresholds and distance algorithms with user-defined functions.

The tool covers domain validation and correction through pattern-based domain analysis and lookup-table verification. It utilizes Levenshtein-based string distance and domain-suffix matching to analyze second and top-level domain patterns for typos.

## Tags

### Networking & Communication

- [Email Address Validators](https://awesome-repositories.com/f/networking-communication/email-address-validators.md) — Detects and suggests corrections for misspelled email domains during user registration or form entry.

### Development Tools & Productivity

- [Email Utilities](https://awesome-repositories.com/f/development-tools-productivity/email-utilities.md) — Serves as a utility for identifying common domain typos in email input fields to reduce registration errors.

### Programming Languages & Runtimes

- [Edit Distance Calculators](https://awesome-repositories.com/f/programming-languages-runtimes/programming-utilities/string-utilities/string-manipulators/edit-distance-calculators.md) — Utilizes Levenshtein-based edit distance to calculate the minimum operations needed to correct a misspelled domain.
- [String Similarity Metrics](https://awesome-repositories.com/f/programming-languages-runtimes/programming-utilities/string-utilities/string-manipulators/edit-distance-calculators/string-similarity-metrics.md) — Calculates the distance between typed domains and known correct extensions to provide automated corrections. ([source](https://github.com/mailcheck/mailcheck/blob/master/README.md))

### Security & Cryptography

- [Input Sanitization](https://awesome-repositories.com/f/security-cryptography/application-and-system-security/web-security/input-sanitization.md) — Prevents delivery failures by cleaning and validating user-provided email addresses to remove typos.

### Software Engineering & Architecture

- [Typo Correction Suggestions](https://awesome-repositories.com/f/software-engineering-architecture/trie-data-structures/typo-tolerance/typo-correction-suggestions.md) — Identifies misspelled email domains and suggests the most likely intended domain by analyzing patterns. ([source](https://github.com/mailcheck/mailcheck#readme))
- [Domain Parsing Logic](https://awesome-repositories.com/f/software-engineering-architecture/domain-parsing-logic.md) — Splits email strings into local and domain parts to isolate and analyze the second-level domain for errors.
- [Customizable Distance Metrics](https://awesome-repositories.com/f/software-engineering-architecture/string-distance-algorithms/customizable-distance-metrics.md) — Provides the ability to replace default similarity logic with user-defined functions to determine match thresholds.
- [Suffix Matching](https://awesome-repositories.com/f/software-engineering-architecture/string-matching-algorithms/partial-string-matching/suffix-matching.md) — Implements suffix matching to compare input email domains against a predefined list of common top-level domains.

### Web Development

- [Email Domain Suggestion Libraries](https://awesome-repositories.com/f/web-development/email-domain-suggestion-libraries.md) — Provides a library for detecting misspelled email addresses and suggesting correct domains based on similarity.
- [Domain Lookup Tables](https://awesome-repositories.com/f/web-development/domain-lookup-tables.md) — Matches input domains against a static dictionary of frequent providers to trigger correction suggestions.
- [Domain Suggestion Lists](https://awesome-repositories.com/f/web-development/domain-suggestion-lists.md) — Allows the definition of specific domain sets and extensions to serve as the baseline for detecting misspellings. ([source](https://github.com/mailcheck/mailcheck#readme))

### User Interface & Experience

- [Real-Time Typo Suggestions](https://awesome-repositories.com/f/user-interface-experience/form-validation-indicators/form-ux-audits/real-time-typo-suggestions.md) — Helps users fix email domain typos in real time to ensure successful account creation.
