nicknames
Hand-curated dataset of English names and nicknames.
What it is and what it does
Nicknames is a Python wrapper around a hand-curated CSV dataset mapping English given names to their nicknames. It provides two main query methods: looking up nicknames for a canonical name (e.g., 'Alexander' → {'al', 'alex', ...}) and looking up canonical names for a nickname (e.g., 'al' → {'alexander', 'alex', ...}). The package handles case-insensitivity and whitespace normalization automatically. It has no external runtime dependencies, making it lightweight to install and use.
The dataset is curated rather than algorithmically generated, which means it reflects real-world name relationships but is limited to names already in the CSV. The package is useful for applications that need to recognize name variants—such as contact deduplication, user profile matching, or name normalization in data pipelines—where you want to treat 'Bob' and 'Robert' as the same person.
Use it for:
- Deduplicating user records by recognizing that 'Bob Smith' and 'Robert Smith' refer to the same person
- Normalizing contact names in CRM or email systems to group nickname variants under a canonical form
- Validating or enriching user input by suggesting canonical names when a nickname is entered
- Building name-matching logic for data integration or ETL workflows
- Genealogy or family tree applications that need to recognize name relationships
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a curated dataset of English given names and their associated nicknames, accessible via a Python API with methods to look up nicknames for a name or canonical names for a nickname.
Yes. The package is lightweight, actively maintained, has no dependencies, and solves a real problem in data cleaning and name matching. Use it when you need reliable nickname-to-canonical mappings for English names; skip it if you need multilingual support or algorithmic name similarity.
Install
nicknames on PyPI
pip
pip install nicknamesuv
uv add nicknamespoetry
poetry add nicknamesInstalling nicknames
Before you install
Low install friction with no runtime dependencies. Actively maintained as of 2026-08-13 with 324 repository stars and recent releases.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions.
Quickstart
from nicknames import NickNamer
nn = NickNamer()
nicks = nn.nicknames_of("Alexander")
print(nicks) # {'al', 'alex', ...}
can = nn.canonicals_of("al")
print(can) # {'alexander', 'alex', ...}
Verify before relying
- Dataset size and coverage of English names beyond what the description excerpt shows
- Performance characteristics when querying large numbers of names
- Whether custom data loading is practical for non-standard name sets
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 161 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 276,918/month — #8,156 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: nicknames-1.0.1-py3-none-any.whl
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
nameparserParses human names into seven structured…
copyleft · top 5,000 on PyPI
names-datasetLooks up demographic information about first…
permissive · top 15,000 on PyPI
usProvides structured access to US state and…
unclear · top 5,000 on PyPI
tangled-up-in-unicodeProvides detailed Unicode character properties…
permissive · top 15,000 on PyPI
datasetsLoads and preprocesses datasets from the…
permissive · top 1,000 on PyPI
jcsCanonicalizes JSON according to RFC 8785,…
permissive · top 5,000 on PyPI
probablepeopleParses unstructured person and company names…
permissive · top 15,000 on PyPI
iso3166Converts between ISO 3166-1 country codes…
permissive · top 5,000 on PyPI
kedro-datasetsKedro-Datasets provides data connectors for…
permissive · top 5,000 on PyPI
lpipsComputes perceptual similarity between image…
permissive · top 5,000 on PyPI