Skip to content

Generator for the official list of IANA TLDs.

License

Notifications You must be signed in to change notification settings

skyzyx/iana-tlds

Folders and files

NameName
Last commit message
Last commit date
Feb 17, 2025
Nov 11, 2024
Apr 12, 2022
May 30, 2023
Apr 12, 2022
Apr 12, 2022
Apr 5, 2024
Dec 16, 2024
Apr 12, 2022
May 16, 2022
May 30, 2023
Apr 12, 2022
Apr 12, 2022
Feb 17, 2025
Feb 17, 2025
Oct 11, 2023
Sep 28, 2024

Repository files navigation

IANA TLD List

List of TLDs from ICANN.

→ The list is here

Usage

Grab the tlds.json file from this repo and use it however you want.

The file is re-generated weekly on Saturday at 9:41am UTC.

Building without Developing

  • Docker Engine + Docker Compose (both come with Docker Desktop)
docker compose up

Local Development

  • Go (run the generator)
  • wget (download the data from IANA)
  • make (facilitate simple build steps)
  • Node.js (for running markdownlint)

View all available tasks:

make

Build your very own copy:

make build

Authorship and Licensing

Code authored by Ryan Parman. The Go code, Dockerfile, and other "development-y" things are made available under the MIT License.

The TLD list itself (including the JSON-formatted tlds.json file) are made available under the terms listed in IANA: Licensing Terms, which states either public domain or the Creative Commons CC0 1.0 Universal (CC0 1.0): Public Domain Dedication license.

Inspiration

This is a port of the generation bits of stephenmathieson/node-tlds to Go. The original package suffers from the issues discussed in “npm & left-pad: Have We Forgotten How To Program?”, including depending on multiple third-party packages that are utterly unnecessary — even in JavaScript/Node.js.

I wanted to provide something more reliable, with no dependencies outside the standard library.