Feedback on the Various International Phone Plugins?

Hi folks! Does anyone here use either @gaurav’s Phone Number Input ( or Zerocode’s Phone Number Input with Formatting ( plug-ins?

They both seem to be implementations of the intl-tel-input.js library ( I’m curious if anyone has any feedback on what the differences are between them, if any?

Anybody prefer one over the other?


Hey @keith,

I listed several of my plugins yesterday. You can check out the editor, demo, and setup walkthrough at

I think @vlad is using it in app(s). Feel free to check with him. :smiley:


@Bubble it seems plugin page is showing the published date as few months ago even through it was published to the store only yesterday. Might be better to (also) show the date it was published to store and not while internally building

1 Like

Hi @gaurav, thanks for the reply and info. Does that plug-in REALLY add the international phone number script load to every page in the site, or just on pages where the input is instantiated? (Sorry, I realize this is a generic plug-in question.)

Not problem at all. I’m happy to answer any questions you may have. It adds to the site header (so not at page level)

Thx. @gaurav: Is that just how Bubble’s plugin interface handles scripts? (That seems wacky if so.)

Oh nope its a choice… I chose to include it in the app header instead of the page header when an element is placed

I already load a metric s-ton of scripts on some pages and don’t need unused ones being loaded. Any chance you’d consider changing that decision? (The intl-phone library isn’t exactly small…)

@gaurav thank you for pointing this out and for tagging us in this post. We’ve put it on the list of things to do. I’ll jump back in here when we’ve made the change. Thanks again.

Will do!

@keith its done :slight_smile:

Oh groovy.

1 Like

So, this input doesn’t have a “focused” state? :expressionless:

@gaurav, so I like the idea of this plug-in, but it’s sort of problematic. It doesn’t have a “focused” state (so it can’t really be styled like other inputs). In fact, it isn’t of input type. Like, you can’t detect when its value has changed. Also, since it’s not an input, it doesn’t obey things like tab order.

Is it possible to implement this differently so that it’s more like an input and not a generic Bubble element? In its present state it’s kind of sub-optimal, sorry to say.

1 Like

@gaurav it looks like you hit a corner case due to the timing of these as it relates to a big refractor we did recently. it working as intended now, but i’ll keep an eye on it. thanks again for pointing it out.

1 Like

Hey @keith appreciate the feedback. I’ll look at adding the focused state to this :smiley:

1 Like

Hi @gaurav, I find that this element (the international phone input plug-in) does not load if it’s in a reusable. Is this related to the “is in a popup” setting? I find that even if “is in a popup” is checked, the code for the element fails to load.

I’m guessing this might be an issue with my request to have this plug-in only load its code on pages that actually instantiate the element…

Is there a way that this plug-in could be made to work in a reusable?

Hey @keith,

  1. The placeholder bug you mentioned on other thread is fixed
  2. I’ve added a new feature to optionally show country code beside the flag
  3. The plugin does not work within reusable elements as now because of the way scripts are rendered and page is loaded b/w bubble and the plugin. I’ve added this to the known issues section of the plugin


Cool. ISO code feature is certainly helpful. The reusable issue is fairly minor, but would be a nice-to-have. BTW, when I’m finished with my adaptation of this to my needs, I’ll post some tutorial-ish info.

This plug is very very helpful vs building it natively in Bubble where performance is suboptimal!

Also, this plug in and general issues around best practices for phone number collection are things that folks should know about!

1 Like

Hello @gaurav

I can’t seem to find the ‘known issues’ section you mention.

I have just subscribed to this plugin, and I can’t seem to be able to view it in a Reusable element. Is this still not working?

Also, since there isn’t a ‘value has changed’ event, how can we know when the phone number has been modified?