ENS Name Normalization Standard
- Javascript
- adraffy/ens-normalize.js
- adraffy/ens-norm-uts46.js
- UTS-46 According to Spec
- UTS-46 w/IDNA 2008
- ENS0 (ENSIP-1)
- ensdomains/eth-ens-namehash
- ethers-io/ethers
- C# — adraffy/ENSNormalize.cs
- Java — adraffy/ENSNormalize.java
git clone --recurse-submodules
this reponpm install
git submodule foreach git pull
npm run impls
— print function lineupnpm run count
— count known labelsnpm run idempotence
— check iff(f(x)) == f(x)
npm run uts46
— determine wheref(uts46(x)) != f(x)
→ jsonnpm run quick
— check validation statusnpm run validate
— generate HTML reports for validation tests → htmlnpm run compare
— generate pair-wise HTML reports for registered labels → htmlnpm run breakdown
— generate HTML reports for normalization error types → htmlnpm run langs
— check that JS, CS, and Java implementations match on all known labels