Skip to main content

A pure Python CLI tool for generating structured semi-random domain names.

Project description

structured-domain-generator

A pure Python, zero-dependency CLI tool for generating structured semi-random domain names.

Quick Start

# Install as a tool
uv tool install structured-domain-generator

# Generate a domain sdg thingy --prefix ff123556 --suffix .net
https://ff123556-transparency-harvesting-investment.net

Note: You can also use pip install, pipx install, or uv tool install, but we recommend uv.

Features

  • Pure Python (0 dependencies).
  • CLI-based interface.
  • Structured generation using seed strings.
  • Support for optional prefixes and suffixes.
  • Weighted selection favoring shorter words (≤ 4 chars).

How it Works

The generator uses the first three characters of a seed string to pick three random words from available lists. Words starting with the corresponding character are prioritized; if none exist, a random word from the pool is used. Words with 4 characters or fewer are given double the selection weight.

Installation

This project uses uv. You can install the tool globally:

uv tool install structured-domain-generator

Usage

Run the tool using the sdg or structured-domain-generator command:

sdg <seed_word> [options]

Options

  • --prefix <string>: Adds a prefix to the domain.
  • --suffix <string>: Adds a suffix (e.g., .com, .net) to the domain.
  • --lists <list...>: Specify word lists to use (business, energy, short). Defaults to all.

Development

  • Project Management: uv
  • Linting & Formatting: ruff

To format and lint the code:

uv run ruff format .
uv run ruff check .

Contributing

Pull requests for bug fixes and improvements are welcome.

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

structured_domain_generator-0.1.1.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

structured_domain_generator-0.1.1-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file structured_domain_generator-0.1.1.tar.gz.

File metadata

File hashes

Hashes for structured_domain_generator-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1062a4bc64a4ba1afa9b32806ce9370a214006ba662f8ce8e47ef7b40f235761
MD5 baf97fe2ecccd3259dc0ed098451ff6e
BLAKE2b-256 b1ee934deb61d71c9603907d5cc339218f41d5cec6d070192a97aba77725b187

See more details on using hashes here.

File details

Details for the file structured_domain_generator-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for structured_domain_generator-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d6bcb2275aaacbc89567947bb96b8c6acf125eb71a12e2c9455f8d678eaa513c
MD5 d73e2e8f9d3f2c088331d76146086aae
BLAKE2b-256 3c4650481a9964ed2241fde6d5d647d1aaac8dd0d4aa95a4c1f1cdc77026919b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page