Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Disposable Email Bundle

Disposable Email Bundle Laravel Package

nalabdou/disposable-email-bundle

Symfony bundle that flags disposable and temporary email addresses before they reach your users. Ships a validator constraint, a reusable checker service, and an updatable list of throwaway domains, so signups, forms, and APIs can reject fake inboxes with a single line of configuration.

View on GitHub
Deep Wiki
Context7

Symfony bundle to detect and block disposable email addresses. Ships with 100K+ domains, extensible loaders, PSR-6 caching, Twig helpers, and a sync console command.

Frequently asked questions about Disposable Email Bundle
Is nalabdou/disposable-email-bundle compatible with Laravel?
Disposable-email-bundle is a Symfony bundle, not a Laravel package, so it will not install and work as a normal drop-in dependency in a Laravel app. Its Symfony bundle bootstrapping, DI layer, and PHP 8 attribute configuration depend on Symfony's Kernel lifecycle. The framework-agnostic detection pieces may be reusable, but you should treat the package as a source to extract from or fork rather than a direct Laravel dependency.
How do I install and use it in a Laravel application?
Do not plan to composer require it directly into a Laravel app and expect automatic wiring. The practical path is a spike to confirm which domain services are decoupled, then wrap the reusable checker, loaders, and whitelist logic in a Laravel service provider with a config file. Add integration tests and a refresh job for the domain list before any production rollout.
What features does the bundle provide for blocking disposable emails?
It ships a validator constraint, a reusable checker service, extensible domain loaders, whitelist providers, PSR-6 caching, Twig helpers, and a sync console command. The bundled list contains 100K+ disposable domains. The valuable Laravel-reusable core is likely the detection logic around loaders and whitelist providers, not the Symfony UI and console integration.
Does the bundle integrate with Laravel's service container and configuration?
No, the bundle relies on Symfony's dependency injection, bundle registration, and attribute-based configuration rather than Laravel's container and service providers. Those Symfony-specific pieces should be replaced, not reused. In Laravel you would expose the extracted checker through your own service provider and config file.
Can I reuse the domain loaders and whitelist providers without Symfony?
Possibly, but this is the key spike you must run before committing. The contracts, value objects, exceptions, whitelist providers, domain loaders, and core services are the most likely framework-agnostic pieces. Confirm they do not assume the Symfony container and that you can supply configuration without PHP 8 attributes.
What PHP and Symfony version constraints should I check before using it with Laravel?
The excerpt does not give exact PHP or Symfony version ranges, and v1.0.0 is the only release data point. Run Composer's why-not checks against your Laravel version and inspect the Symfony component constraints before doing any extraction work. Transitive conflicts on Symfony components are a real risk because Laravel pins its own compatible versions.
How is the disposable email domain list updated?
The package advertises a sync console command and a large bundled domain list, but the excerpt does not specify whether the blocklist is a snapshot, remotely fetched, or user-supplied. You need to confirm the source and maintenance cadence before relying on it. For Laravel, plan a scheduled job or cache refresh around the extracted loader rather than depending on the Symfony console command.
How do I configure whitelisting to prevent false positives in Laravel?
The bundle includes whitelist providers, which are the mechanism for reducing false positives on legitimate domains. In Symfony those are likely wired through bundle configuration or attributes, so in Laravel you should replace that with a config file and your own provider bindings. Add regression tests for known-good domains and your company's own mail domains.
Can Laravel listen to the bundle's domain events?
The package targets Symfony's EventDispatcher, so Laravel's event dispatcher will not receive its events without an adapter. Verify which domain events exist and whether they carry enough data to bridge. If events are essential, budget for an event bridge or emit your own events from the extracted checker.
Is this package production-ready and well maintained for Laravel teams?
Treat it cautiously: it is a single-author, single-release v1.0.0 package with no adoption history and a high bus factor for Laravel teams. The presence of a test suite, QA tooling, and docs is positive, but you would own the Laravel adapter and likely a fork. Validate behavior in a Symfony container first and canary the integration behind a feature flag.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo