daviddrysdale/python-phonenumbers

Python port of Google's libphonenumber

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 10 minutes ago
Type:Library / SDKCategory(s):Core & Utility LibrariesLanguages & Runtimes
Added to GitGenius on September 18th, 2026
Created on April 21st, 2011
Open Issues & Pull Requests: 13 (+0)
GitHub issues: Enabled
Number of forks: 444
Total Stargazers: 3,774 (+0)
Total Subscribers: 82 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.6 hours
Mean response time: 15.1 hours
90th percentile: 21.4 hours
Tracked items: 24

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 1
Closed in 7 days: 1
Avg open age: 710 days
Stale 30+ days: 2
Stale 90+ days: 2

Recent activity

Opened in 7 days: 1
Closed in 7 days: 1
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • upstream (9)
  • wai (4)
  • packaging (3)
  • unresponsive (2)

Most active issues this week

Detailed Description

python-phonenumbers is a Python port of Google's libphonenumber library that parses, validates, and formats international phone numbers.

The library solves the problem of reliably handling phone numbers across different countries and formats. It works by providing a PhoneNumber object that can be created from string input via a parse function, which requires specifying the originating country unless the number is in E.164 format. Once parsed, numbers can be validated to check whether they are possible numbers with the correct digit count or valid numbers in assigned exchanges. The library offers several specialized tools: a format_number function for standardizing output across multiple formats, an AsYouTypeFormatter for applying formatting as users type, a PhoneNumberMatcher for extracting phone numbers from larger text blocks, and geocoding and carrier lookup capabilities for certain regions.

Developers should choose this tool if they need robust international phone number handling in Python. It suits applications with user-facing phone number input, systems that process phone numbers from varied sources, or services operating across multiple countries. The library maintains compatibility across Python versions in a single codebase without requiring conversion tools. The README notes that the library includes substantial metadata that can create memory overhead, and mentions two mechanisms exist for addressing this concern, though specific details are not elaborated.

The project maintains active synchronization with upstream libphonenumber releases through documented release history. Development follows a structured approach with unit tests covering the available functionality and comprehensive documentation hosted separately from the repository.