Abraham Golor
06/15/2026, 10:30 AMphonenumber for phone number validation and formatting across Android and iOS.
Why I built it:
While working on a KMP app, I found myself duplicating phone number validation logic across Android and iOS. Android had libphonenumber, iOS had PhoneNumberKit, and keeping behavior consistent between both platforms became messy.
So I built a shared KMP wrapper that exposes a single API while delegating to each platform’s native implementation.
Features:
- Global phone number validation
- Validation by country ISO code
- Validation by country calling code
- Format to E.164
- Format to international format
- Extract region code
- Extract country calling code
- Shared API for Android & iOS
- Native performance (libphonenumber on Android, PhoneNumberKit on iOS)
GitHub: https://github.com/ajayinnovations/phonenumber
Would love feedback on the API design, naming, and any edge cases I might have missed 🙏Tgo1014
06/15/2026, 11:49 AMTgo1014
06/15/2026, 11:49 AM• Androiduses Google's`libphonenumber`
• iOSuses`PhoneNumberKit`through a wrapper bridge
Abraham Golor
06/15/2026, 11:52 AMAbraham Golor
06/15/2026, 3:34 PM