haikunator
Heroku-like random name generator for python.
What it is and what it does
Haikunator generates random, human-readable names in the style of Heroku's naming scheme—combining a random adjective, noun, and numeric or hex token separated by a delimiter. It's a lightweight utility with no external dependencies, designed for use cases where you need to generate unique but pronounceable identifiers quickly.
The package exposes a single `Haikunate` class with one main method, `haikunate()`, which accepts parameters to customize the token format (numeric, hexadecimal, or custom characters), token length, delimiter, and the word lists themselves. It supports optional seeding for reproducible output.
Use it for:
- Generate unique container or instance names for deployment and orchestration systems
- Create memorable temporary identifiers for test fixtures, sessions, or temporary resources
- Produce readable slugs or identifiers for user-facing features like temporary URLs or invite codes
- Name temporary files, logs, or artifacts in CI/CD pipelines where human readability aids debugging
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Generates random Heroku-style names composed of adjectives, nouns, and optional numeric or hex tokens, with configurable delimiters and character sets.
Yes, if you need a simple, dependency-free random name generator and can accept that the package is no longer maintained. The core functionality is stable and unlikely to break for basic use cases, but do not rely on it for new Python versions or expect bug fixes. For active projects, consider whether a maintained alternative better suits your risk tolerance.
Install
haikunator on PyPI
pip
pip install haikunatoruv
uv add haikunatorpoetry
poetry add haikunatorInstalling haikunator
Before you install
Low friction install with no runtime dependencies. Package is marked abandoned (last commit 2018-01-30, no releases since 2016-09-20), so expect no active maintenance or bug fixes.
License in practice
BSD license is permissive, allowing use in commercial and private projects with minimal restrictions.
Quickstart
pip install haikunator
from haikunator import Haikunator
haikunator = Haikunator()
print(haikunator.haikunate()) # => "wispy-dust-1337"
print(haikunator.haikunate(token_length=6)) # => "patient-king-887265"
Verify before relying
- Whether the package works reliably with Python versions released after 2018 (classifiers list Python 3.6 as latest tested)
- Whether custom adjective/noun lists are validated or if malformed input could cause unexpected behavior
Package facts
| License | BSD (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 3,615 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 93,095/month — #13,400 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: haikunator-2.1.0-py2.py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
randomnameGenerates random memorable identifiers by…
permissive · top 5,000 on PyPI
random-slugsGenerates random word-based slugs with…
unclear · top 15,000 on PyPI
unique-namerGenerates unique, human-readable names and…
permissive · top 15,000 on PyPI
wonderwordsGenerates random English words and sentences…
permissive · top 15,000 on PyPI
dicewarediceware generates memorable passphrases by…
copyleft · top 5,000 on PyPI
codenamizeGenerates consistent, human-readable codenames…
permissive · top 15,000 on PyPI
petnameGenerates random, pronounceable names by…
permissive · top 15,000 on PyPI
pytest-rngProvides pytest fixtures that make random…
permissive · top 15,000 on PyPI
random2Provides Python 2.7's random module…
permissive · top 15,000 on PyPI
pytest-randomlyA pytest plugin that randomly shuffles test…
permissive · top 5,000 on PyPI