What is Puny Code?

Punycode – Wikipedia

Punycode is an encoding method standardized in RFC 3492 for converting Unicode strings into ASCII-compatible strings consisting of the characters a through z, 0 through 9, and the hyphen (-).

The main reason for introducing Punycode was that the established Domain Name System only allows names consisting of the 26 Latin letters, the digits 0 through 9, and a hyphen (“keyboard hyphen”).

This was sufficient for the English language, but most other languages contain additional characters—the German language, for example, includes the umlauted letters ä, ö, and ü, as well as ß. To enable the processing of text from such languages, the Internationalizing Domain Names in Applications (IDNA) standard was introduced in 2003, which uses Punycode as its encoding method.