Weave Code
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

Filament Phone Input Laravel Package

ysfkaya/filament-phone-input

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Global User Onboarding: Accelerate sign-up flows for international users by integrating a standardized phone input component with country-specific formatting, reducing friction in form validation and data collection.
  • Compliance & Data Integrity: Ensure phone numbers are stored in a validated, normalized format (e.g., E.164) to comply with regional regulations (e.g., GDPR, CCPA) and avoid parsing errors during processing.
  • Multi-Region Support: Enable localized experiences for customer-facing admin panels (e.g., SaaS platforms, marketplaces) by dynamically adjusting phone number formats based on user location or selected country.
  • Cost Optimization: Replace custom-built phone input solutions (or third-party APIs) with an open-source, Filament-native component, reducing technical debt and maintenance overhead.
  • Feature Roadmap:
    • Phase 1: Integrate into core user profiles (e.g., "Contact Details" section) for B2C applications.
    • Phase 2: Extend to vendor/partner portals where phone validation is critical for KYC/AML compliance.
    • Phase 3: Add phone-based authentication (OTP) workflows using the validated numbers.

When to Consider This Package

  • Adopt if:

    • Your Filament-based admin panel requires international phone number collection (e.g., global SaaS, e-commerce, or field service apps).
    • You need real-time validation (e.g., mobile vs. landline) and formatting (e.g., +1 (555) 123-4567 vs. 020 1234 5678) without building custom logic.
    • Your team lacks frontend expertise to integrate libraries like intl-tel-input manually.
    • You’re using Laravel Phone for backend validation and want seamless frontend integration.
    • Geo-IP-based defaults (e.g., auto-selecting a user’s country) align with your UX strategy.
  • Look elsewhere if:

    • You’re not using Filament (this is a Filament-specific package).
    • Your use case requires advanced telephony features (e.g., call routing, SMS integration) beyond input/validation.
    • You need whitelabeling or custom branding of the country dropdown (limited theming options in this package).
    • Your app targets non-standard phone formats (e.g., satellite phones, VoIP-specific numbers) not covered by libphonenumber.
    • You prefer a managed service (e.g., Twilio Lookup) for phone validation over self-hosted solutions.

How to Pitch It (Stakeholders)

For Executives:

"This package lets us standardize how phone numbers are collected and stored across our global admin panels—reducing errors, improving compliance, and cutting dev time. For example, a user in Germany won’t accidentally enter a US number in the wrong format, and our support team can rely on validated data for outreach. It’s a low-risk, high-reward upgrade to our user onboarding flows, with minimal ongoing maintenance since it’s open-source and Filament-native."

Key Outcomes:

  • Faster time-to-market for international features.
  • Lower support costs from reduced data entry errors.
  • Scalable compliance for regions with strict phone number regulations.

For Engineering:

*"This is a drop-in replacement for any custom phone input logic in Filament, leveraging intl-tel-input and Laravel Phone under the hood. It handles:

  • Country-specific formatting (e.g., E.164, national, or RFC3966).
  • Validation (mobile/landline types, lenient/strict modes).
  • Geo-IP defaults (auto-detect user location).
  • Separate storage of country codes if needed.

Implementation Notes:

  • Installation: composer require ysfkaya/filament-phone-input + publish assets.
  • Usage: Replace TextInput with PhoneInput::make('phone') in forms/tables/infolists.
  • Customization: Toggle flags, restrict countries, or disable dropdowns via config methods.
  • Backend: Works seamlessly with Laravel Phone’s validation rules (e.g., validateFor('TR', libPhoneNumberType::MOBILE)).

Trade-offs:

  • Pros: No frontend JS boilerplate; Filament 3.x compatible; MIT-licensed.
  • Cons: Limited theming; requires libphonenumber for parsing (add ~5MB to asset bundle).

Recommendation: Pilot in the user profiles section to validate UX before rolling out to vendor portals."*

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.
emuniq/filament-browser-notifications
syriable/filament-translator
hungnm28/livewire-form
wenprise/eloquent
crudly/encrypted
fadion/bouncy
cuci/prototurk-sdk
gos/pubsub-router-bundle
cuci/prototurk-sdk-symfony
clementtalleu/easyadmin-markdown-bundle
codeflextech/permission-manager
karnoweb/livewire-datepicker
sayedenam/sayed-dashboard
milito/query-filter
apiboxsym/user-bundle
apiboxsym/health-check-bundle
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui