Download the PHP package emailsherlock/email-guard-bundle without Composer
On this page you can find all versions of the php package emailsherlock/email-guard-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download emailsherlock/email-guard-bundle
More information about emailsherlock/email-guard-bundle
Files in emailsherlock/email-guard-bundle
Package email-guard-bundle
Short Description Symfony integration for Email-Guard: a VerifiedEmail constraint and a verify_email form option that block disposable and undeliverable addresses at submit time.
License MIT
Homepage https://github.com/Emailsherlock1/email-guard-bundle
Informations about the package email-guard-bundle
email-guard-bundle
Symfony integration for Email-Guard: blocks junk email addresses at form submit, before they reach your database.
[email protected] passes Symfony's Email constraint. So does
every disposable address. This bundle adds the missing layer on top of
email-guard-core:
syntax profile, reserved TLDs, 73k+ disposable domains, all checked locally
with zero latency. An EmailSherlock API key
adds live MX, SMTP probe, and a fresh disposable list.
Install
Symfony Flex registers the bundle; otherwise add EmailGuardBundle to
config/bundles.php.
Configure
Everything is optional. Without config the guard runs local checks with the spec defaults:
Fail-open is the default on purpose. If the API is unreachable, local checks keep working and the rest passes. Your signup form never breaks because of our API.
Use
As a form option, one line per field:
As a constraint, wherever Symfony validation runs (forms, API DTOs, manual
validate()):
A denied address produces one violation: "This email address can't receive
mail. Check it for typos." Override per constraint via message:.
Review flows
review_on verdicts add no violation; validation is allow-or-deny by
design. For a second gate (hold the signup, require confirmation), inject
the guard and read the result yourself:
Reacting to decisions
The bundle dispatches a GuardDecisionEvent for every decision (allow,
deny, review), so you can react however you like: log to your own channel,
write to your own store, push a metric, fire a webhook. Register a listener:
The bundle ships one default listener that logs denies as
email_guard.denied (domain only, never the address) via PSR-3, so blocks
are visible even without an API key. It is just one subscriber: to silence
it, override the email_guard.event.decision_log_listener service.
For aggregate analytics across your sites, set an API key instead: the guard then reports decisions to your EmailSherlock account (domain only), no listener needed.
Custom transport
Bind your own TransportInterface (e.g. Psr18Transport around your HTTP
client) by decorating the email_guard.factory service arguments. The
default uses ext-curl.
License
MIT, see LICENSE.
All versions of email-guard-bundle with dependencies
emailsherlock/email-guard-core Version ^0.3
psr/event-dispatcher Version ^1.0
psr/log Version ^3.0
symfony/config Version ^6.4 || ^7.0
symfony/dependency-injection Version ^6.4 || ^7.0
symfony/http-kernel Version ^6.4 || ^7.0
symfony/validator Version ^6.4 || ^7.0