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
Nova Phone Field

Nova Phone Field Laravel Package

yieldstudio/nova-phone-field

A Laravel Nova field for phone numbers, built on the intl-tel-input library. It provides an interactive country selector, automatic formatting, and validation so you can store phone numbers in a consistent international format within your Nova resources.

View on GitHub
Deep Wiki
Context7

Nova Phone Number field with a dynamic mask based on the country code inserted by the user.

Frequently asked questions about Nova Phone Field
How do I install yieldstudio/nova-phone-field in a Laravel Nova application?
Install it with Composer using composer require yieldstudio/nova-phone-field, then use the field class inside your Nova resource. Follow the package README for any required asset publishing or Nova field configuration. After installing, test the field in a local Nova resource before rolling it out to production.
Does yieldstudio/nova-phone-field store phone numbers in E.164 format?
Version 2.0.0 stores phone values in E.164, which is the canonical international format used for interoperability. That is a breaking data-semantic change from earlier formatted values. Confirm this behavior in your target release and update downstream consumers that expect human-readable numbers.
Which Laravel, Nova, and PHP versions does nova-phone-field 2.0 support?
The package is a Laravel Nova custom field, so its compatibility is tied to the Nova version installed in your application. The exact Laravel, Nova, PHP, and database constraints should be checked in composer.json and the 2.0.0 release notes before upgrading. Test against your target stack, especially if you rely on published frontend assets.
How does the dynamic phone mask and country selector work?
The field uses intl-tel-input to provide an interactive country selector and automatic formatting based on the inserted country code. It applies a dynamic mask so the visible phone format changes with the selected country. In 2.0.0 the stored value is normalized rather than kept as the displayed formatted string.
Can I use the release-note SQL to migrate existing phone numbers to E.164?
Do not apply the release-note SQL directly in production. REGEXP_REPLACE is not portable across all Laravel-supported databases and may be missing on older MySQL or MariaDB versions, and a simple CONCAT with a plus sign can create invalid E.164 values for 00 prefixes, extensions, short codes, nulls, or malformed data. Prefer a staged application-level migration using a PHP phone-number parsing library, back up data, run against a production-like copy, and define a rollback plan before writing E.164 values.
Does nova-phone-field validate phone numbers on input or only normalize the stored value?
The field provides validation and automatic formatting through intl-tel-input, but the technical evaluation flags that you should verify whether it strictly enforces E.164 on input or only normalizes before storage. Do not rely on client-side validation alone for data integrity. Add server-side validation and normalization for any phone number that enters your application outside Nova.
How should I migrate existing phone values with extensions, short codes, national numbers, or 00 prefixes?
Classify existing values before migration as valid international, national-only, 00-prefixed, extension-bearing, short code, empty, or malformed. Use explicit rules for each category and quarantine records that cannot be converted safely instead of forcing them into E.164. Preserve extensions separately if your application needs them, and produce a validation report with converted, skipped, and quarantined counts.
Will switching to E.164 break APIs, exports, search, or integrations that expect formatted phone numbers?
It can, because 2.0.0 changes the persisted value from a formatted string to a canonical E.164 number. Any API, export, search index, SMS workflow, or integration that assumes spaces, dashes, parentheses, or national formatting may need updates. Inventory downstream consumers before rollout and update tests to expect normalized values.
What alternatives exist to yieldstudio/nova-phone-field for Laravel Nova?
Alternatives include using a standard Nova text field plus a server-side phone parsing library, or another Nova phone field package that matches your version and validation requirements. The right choice depends on whether you need an interactive country selector, strict E.164 storage, and maintained frontend assets. Evaluate compatibility with your Nova version and data migration effort before switching.
Is nova-phone-field production-ready, and how do I test the inputmask 5 assets?
The package is suitable for production if you treat phone numbers as normalized identifiers and complete the data migration carefully. The inputmask 5 upgrade improves copy/paste and indicator behavior, but you should verify that published Nova assets and libphonenumber-js are bundled correctly and test browsers for formatting and validation. Run staging tests against a production-like dataset and check rollback and asset publishing steps before deploying.
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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console