Displaying 1 to 3 from 3 results

punycode.js - A robust Punycode converter that fully complies to RFC 3492 and RFC 5891.

  •    Javascript

Punycode.js is a robust Punycode converter that fully complies to RFC 3492 and RFC 5891. This project was bundled with Node.js from v0.6.2+ until v7 (soft-deprecated).

uri-js - An RFC 3986 compliant, scheme extendable URI parsing/validating/normalizing/resolving library for JavaScript

  •    Javascript

URI.js is an RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for all JavaScript environments (browsers, Node.js, etc). It is also compliant with the IRI (RFC 3987) and IDNA (RFC 5890) specifications. URI.js has an extensive test suite, and works in all (Node.js, web) environments. It weighs in at 5.6kb (gzipped, 15kb deflated).

idna-uts46 - A UTS #46 processing algorithm for IDNA2008 strings

  •    Javascript

The JS Punycode converter library is a great tool for handling Unicode domain names, but it only implements the Punycode encoding of domain labels, not the full IDNA algorithm. In simple cases, a mere conversion to lowercase text before input would seem sufficient, but the real mapping for strings is far more complex. This library implements the full mapping for these strings, as defined by UTS #46. Unfortunately, the situation of internationalized domain names is rather complicated by the existence of multiple incompatible standards (IDNA2003 and IDNA2008, predominantly). While UTS #46 tries to bridge the incompatibility, there are four characters which cannot be so bridged: ß (the German sharp s), ς (Greek final sigma), and the ZWJ and ZWNJ characters. These are handled differently depending on the mode; in transitional mode, these strings are mapped to different ones, preserving capability with IDNA2003; in nontransitional mode, these strings are mapped to themselves, in accordance with IDNA2008.