Rules
Validation rules help ensure data quality and security in your Laravel applications. The Basic Components package includes advanced validation rules that go beyond Laravel's built-in validators.
These rules can be used in form requests, controller validation, or directly in Livewire components.
Valid Name Rule
The ValidNameRule validates that a name contains a realistic first and last name pattern, filtering out common test data, company names, and invalid patterns.
This rule checks for:
- At least two name parts (first and last name)
- Valid characters including international letters, hyphens, apostrophes
- Filters out common test names like "John Doe", "Max Mustermann"
- Detects company suffixes like "GmbH", "LLC", "Ltd"
- Rejects keyboard patterns and repeated characters
- Supports international naming conventions
1use MaskowLabs\BasicComponents\Rules\ValidNameRule;2 3$request->validate([4 'name' => ['required', new ValidNameRule()],5]);
Valid Email Rule
The ValidEmailRule provides enhanced email validation including disposable email detection using the verifymail.io service when an API key is configured.
Features include:
- Standard email format validation
- Disposable/temporary email detection (requires API key)
- Graceful fallback when external service is unavailable
- Configurable via basic-components.verifymail_api_key
To enable disposable email detection, add your verifymail.io API key to your config:
'verifymail_api_key' => env('VERIFYMAIL_API_KEY', null),
1use MaskowLabs\BasicComponents\Rules\ValidEmailRule;2 3$request->validate([4 'email' => ['required', 'email', new ValidEmailRule()],5]);