random-slugs
A Python package for generating random slugs using a customizable vocabulary of words.
What it is and what it does
random-slugs generates random, human-readable identifiers by combining words from curated lists. It lets you choose which parts of speech to include (adjectives, nouns), filter by semantic categories (e.g., colors, animals, professions), set the output format, and optionally seed the randomness for reproducibility. The package reports it can generate 6254859 unique combinations across its word lists.
Typical use is generating memorable identifiers for URLs, test data, or temporary resource names. It has no external dependencies and supports Python 3.9, 3.10, 3.11, and 3.12. The API is minimal—primarily the `generate_slug()` function with optional configuration—and includes custom exception classes for configuration errors.
Use it for:
- Generate memorable temporary identifiers for test fixtures or demo data in development workflows.
- Create human-readable slugs for URLs or API endpoints instead of numeric IDs.
- Produce reproducible random names for CI/CD pipelines or batch jobs by setting a seed.
- Build random usernames or project names with semantic constraints (e.g., adjective + animal).
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Generates random word-based slugs with customizable parts of speech, word categories, and output formats (kebab-case, snake_case, camelCase).
Yes, if you need simple, customizable random slug generation with no dependencies. The low install friction and permissive license make it a lightweight choice. However, the dormant maintenance status means you should verify it works with your target Python version and accept that bug fixes or feature additions are unlikely. Not suitable if you need active support or expect the package to evolve.
Install
random-slugs on PyPI
pip
pip install random-slugsuv
uv add random-slugspoetry
poetry add random-slugsInstalling random-slugs
Before you install
Low install friction with no runtime dependencies. Maintenance is dormant—last commit was 2024-05-28, though the repository remains active and unarchived.
License in practice
Licensed under MIT with full permissive terms. License treatment is marked unclear in the metadata, but the raw license text is the standard MIT License, permitting commercial and private use with attribution.
Quickstart
pip install random-slugs
from random_slugs import generate_slug
slug = generate_slug(num_of_words=3)
print(slug) # e.g. 'quick-brown-fox'
# With options
options = {"format": "snake", "seed": 42}
slug = generate_slug(num_of_words=2, options=options)
Requires Python 3.9 or later.
Verify before relying
- Whether the word lists (adjectives, nouns) and their categories are comprehensive enough for typical use cases.
- Performance characteristics when generating many slugs in sequence or with large seed values.
- Whether dormant maintenance status will affect future Python compatibility.
Package facts
| License | The MIT License (MIT) Copyright (c) 2024 Fabio Kapsahili Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the… (full text in the JSON record) (unclear) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | dormant — 810 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 118,292/month — #12,127 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: random_slugs-1.0.4-py3-none-any.whl
Keywords: development, sample, setuptools
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
coolnameGenerates random human-readable names and…
permissive · top 5,000 on PyPI
wonderwordsGenerates random English words and sentences…
permissive · top 15,000 on PyPI
haikunatorGenerates random Heroku-style names composed of…
permissive · top 15,000 on PyPI
petnameGenerates random, pronounceable names by…
permissive · top 15,000 on PyPI
randomnameGenerates random memorable identifiers by…
permissive · top 5,000 on PyPI
django-autoslugProvides a Django model field that…
copyleft · top 15,000 on PyPI
random2Provides Python 2.7's random module…
permissive · top 15,000 on PyPI
unique-namerGenerates unique, human-readable names and…
permissive · top 15,000 on PyPI
codenamizeGenerates consistent, human-readable codenames…
permissive · top 15,000 on PyPI
unicode-slugifyConverts strings into URL-friendly slugs while…
permissive · top 15,000 on PyPI