tangerine
Version:
Tangerine is the best Node.js drop-in replacement for dns.promises.Resolver using DNS over HTTPS ("DoH") via undici with built-in retries, timeouts, smart server rotation, AbortControllers, and caching support for multiple backends (with TTL and purge sup
167 lines (166 loc) • 3.63 kB
JSON
{
"name": "tangerine",
"description": "Tangerine is the best Node.js drop-in replacement for dns.promises.Resolver using DNS over HTTPS (\"DoH\") via undici with built-in retries, timeouts, smart server rotation, AbortControllers, and caching support for multiple backends (with TTL and purge support).",
"version": "1.6.0",
"author": "Forward Email (https://forwardemail.net)",
"bugs": {
"url": "https://github.com/forwardemail/nodejs-dns-over-https-tangerine/issues"
},
"contributors": [
"Forward Email (https://forwardemail.net)"
],
"dependencies": {
"auto-bind": "4",
"dns-packet": "^5.6.1",
"dohdec": "^5.0.3",
"get-stream": "6",
"hostile": "^1.4.0",
"ipaddr.js": "^2.2.0",
"is-stream": "2.0.1",
"merge-options": "3.0.4",
"p-map": "4",
"p-wait-for": "3",
"port-numbers": "6.0.1",
"private-ip": "^3.0.2",
"punycode": "^2.3.1",
"semver": "^7.6.3"
},
"devDependencies": {
"@commitlint/cli": "^19.3.0",
"@commitlint/config-conventional": "^19.2.2",
"ava": "^5.2.0",
"axios": "^1.7.3",
"benchmark": "^2.1.4",
"cross-env": "^7.0.3",
"eslint": "^9.8.0",
"eslint-config-xo-lass": "^2.0.1",
"fetch-mock": "^10.1.1",
"fixpack": "^4.0.0",
"got": "11",
"husky": "^9.1.4",
"ioredis": "^5.4.1",
"ioredis-mock": "^8.9.0",
"is-ci": "^3.0.1",
"lint-staged": "^15.2.8",
"lodash": "^4.17.21",
"nock": "^13.5.4",
"node-fetch": "2",
"nyc": "^17.0.0",
"phin": "^3.7.1",
"remark-cli": "11.0.0",
"remark-preset-github": "^4.0.4",
"request": "^2.88.2",
"sort-keys": "4.2.0",
"superagent": "^9.0.2",
"undici": "^6.19.5",
"xo": "^0.58.0"
},
"engines": {
"node": ">=17"
},
"files": [
"index.js"
],
"homepage": "https://github.com/forwardemail/nodejs-dns-over-https-tangerine",
"keywords": [
"1:1",
"abort",
"abortcontroller",
"abuse",
"adapter",
"alternative",
"api",
"backend",
"better",
"cache",
"caching",
"callback",
"callbacks",
"cloudflare",
"controller",
"ddos",
"dns",
"doh",
"drop-in",
"dropin",
"dummy",
"email",
"fast",
"fe",
"forward",
"google",
"http",
"https",
"lad",
"layer",
"lookup",
"lru",
"malware",
"mandarin",
"mechanism",
"memory",
"modern",
"mongo",
"over",
"package",
"phishing",
"prevention",
"project",
"promise",
"promises",
"proof",
"protection",
"pttl",
"query",
"records",
"redis",
"replace",
"replacement",
"resolve",
"resolver",
"retries",
"retry",
"rotate",
"rotation",
"security",
"server",
"signal",
"smart",
"spam",
"storage",
"tangelo",
"tangerine",
"tangerines",
"timeout",
"timeouts",
"ttl",
"undici",
"wrapper"
],
"license": "MIT",
"main": "index.js",
"peerDependencies": {
"undici": "*"
},
"peerDependenciesMeta": {
"undici": {
"optional": true
}
},
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "https://github.com/forwardemail/nodejs-dns-over-https-tangerine"
},
"scripts": {
"ava": "cross-env NODE_ENV=test ava",
"benchmarks": "node benchmarks/lookup && node benchmarks/resolve && node benchmarks/reverse",
"lint": "xo --fix && remark . -qfo && fixpack",
"nyc": "cross-env NODE_ENV=test nyc ava",
"prepare": "husky install",
"pretest": "npm run lint",
"test": "npm run nyc"
}
}