Tldx – CLI tool for fast domain name discovery

85 Brandutchmen 30 6/1/2025, 4:29:20 AM github.com ↗

Comments (30)

Brandutchmen · 1d ago
I’m always building small tools for myself that end up buried in private repos. I figured it was time to start sharing a few that others might find useful.

Just published tldx, a CLI tool I use to quickly check if a domain name is available across a bunch of TLDs and variations.

Hopefully, some of you CLI enthusiasts can find it useful!

cranberryturkey · 1d ago
need --suggest "..." --max 100
Brandutchmen · 1d ago
I'm wanting to add something like this.

Besides length, what would you think would be a good way to sort suggestions here?

cranberryturkey · 1d ago
just alphabetically easier to read imo
Brandutchmen · 1d ago
good suggestion

Currently, it just streams out whichever whois servers respond first. Sorting is a good improvement!

cranberryturkey · 1d ago
Agreed. I’d provide two lists both sorted. First a list of taken then a list of available.
Brandutchmen · 1d ago
I wonder if it'll be good to go from a line-by-line print to an actual TUI. That'd make sorting + dynamically inserting new domains make sense
dayjah · 1d ago
Great tool! Prior me is sad this didn’t exist!

I’d be fine with a live summary status updating showing # available and # taken. Hitting ctrl+c resulting in printing the lists as above.

Also perhaps a —timeout flag, or similar as I may only want to wait 5 minutes / length of time it takes to steep tea for answers.

cranberryturkey · 21h ago
i'd rather be able to pipe the results to a domains.txt file to be honest.
noperator · 1d ago
You can also use https://github.com/noperator/raink to brainstorm TLDs that are relevant to some topic you care about. For example:

    curl -s https://data.iana.org/TLD/tlds-alpha-by-domain.txt |
        raink -f /dev/stdin -p 'which of these TLDs is most related to the concept of "hacking"?' |
        jq -r 'map(.value)[:10]'
    
    [
      "BLACK",
      "COMSEC",
      "TOOLS",
      "SECURITY",
      "ZERO",
      "EXPOSED",
      "FORUM",
      "SHELL",
      "BOT",
      "SOFTWARE"
    ]
Those are all in the IANA list but not all can be registered—just showing as PoC. See https://bishopfox.com/blog/raink-llms-document-ranking for more background.
noitpmeder · 16h ago
Are you the creator of that project?
cb321 · 1d ago
Since identifier bike shedding is more broad than only top-level domain names, readers interested in a tool like this might also be interested in https://github.com/c-blake/thes - a command-line thesaurus utility written in Nim and organized around the Moby Thesaurus format. An example usage might be:

    $ thes -n5 lofty
    airy    gaudy   high   showy  brand  sound
    big     grand   lurid  steep  clear  valid
    erect   grave   noble  tall   lucid  logo
    fancy   great   proud  tony   regal
Observant readers might notice 3 banks of alphabetic sorting for the 3 kinds of synonyms - reciprocal/reflected (airy..tony), defined but irreciprocal (brand..valid), and wilder made-up names/phrases someone got into Moby (just logo in this example). These can be configured to show up in 3 distinct terminal colors.

Besides the prefix/suffix ideas of `tldx` in TFA, "synonymity" could also be incorporated, but you might need a higher quality source of such than Moby which has kind of a "big tent" aspect to its synonym lists.

a_dabbler · 1d ago
You should consider adding DNS checks prior to WHOIS. Whois is unreliable and you can be quickly blocked, doing a quick SOA DNS request can help reduce your WHOIS queries when the domain definitely exists (no SOA is not enough to confirm domain is unregistered but existing SOA is enough to confirm a domain is registered)
Arubis · 1d ago
WHOIS is actually scheduled for sunset by IANA: https://www.icann.org/en/announcements/details/icann-update-...
Brandutchmen · 1d ago
This is good to know! I'll migrate this over to RDAP
indigodaddy · 1d ago
So only do a whois when no SOA exists. That's clever.
Brandutchmen · 1d ago
Yeah! Excited to have a short circuit.
Brandutchmen · 1d ago
Good advice!

DNS check -> RDAP seems to be the right way to take this.

dedicate · 1d ago
The core problem: The good old days of easy domain hunting are long gone...
amelius · 1d ago
My version of the tool:

    #!/bin/sh

    echo "Don't bother, all the good names have been taken"
akoculu · 1d ago
I just got some good domains like mitte.ai and told.so a few months ago
Brandutchmen · 1d ago
I agree. That's why I love using a permutation tool like this. It has had some surprising finds so far.

Though it's still a cope for the real problem of domain squatting.

akoculu · 1d ago
installation fails for me

λ brew tap brandonyoungdev/tldx λ brew install tldx

==> Fetching brandonyoungdev/tldx/tldx ==> Downloading https://github.com/brandonyoungdev/tldx/releases/download/ curl: (56) The requested URL returned error: 404

Error: tldx: Failed to download resource "tldx" Download failed: https://github.com/brandonyoungdev/tldx/releases/download/v1...

Brandutchmen · 1d ago
ashleyhindle · 1d ago
Same here
Brandutchmen · 1d ago
croes · 1d ago
phinnaeus · 1d ago
Surely just a typo in the readme
Brandutchmen · 1d ago
Yep! There's supposed to be two examples there... Fixed now :)
Brandutchmen · 1d ago
Good eye.

Fixed now :)