Email Validator Architecture
System Overview
FastAPI app under app/ exposing validation endpoints. Each email goes through format, MX, then SMTP recipient verification.
Architecture Diagram
graph LR
ClientRequest["Client / Postman / CSV"]
FastApiApp["FastAPI app.main"]
DnsMxLookup["DNS MX lookup"]
SmtpRecipientCheck["SMTP RCPT TO check"]
ClientRequest -->|"POST validate email or CSV"| FastApiApp
FastApiApp -->|"checks mail servers exist"| DnsMxLookup
FastApiApp -->|"verifies recipient mailbox"| SmtpRecipientCheck
How to read this diagram
Arrows mean flow / dependency / "talks to", not button clicks. Each arrow label says what happens on that step.
Validation flow
- Email format check
- DNS MX record lookup
- SMTP recipient verification (
RCPT TO)
Technology Stack
| Layer | Technology |
|---|---|
| API | FastAPI + Uvicorn |
| Packaging | Docker |
| QA | Postman collection |