spiderlint 0.0.0 → 0.143.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +235 -0
- package/README.md +244 -0
- package/bin/spiderlint.js +11 -0
- package/dist/agent.js +46 -0
- package/dist/cache/extractors.js +37 -0
- package/dist/cache/http.js +99 -0
- package/dist/cache/index.js +101 -0
- package/dist/cache/purge.js +63 -0
- package/dist/cache/status.js +52 -0
- package/dist/cli.js +602 -0
- package/dist/color.js +10 -0
- package/dist/config/environment.js +88 -0
- package/dist/config/index.js +104 -0
- package/dist/config/policy.js +170 -0
- package/dist/config/schema.js +127 -0
- package/dist/crawl/body.js +92 -0
- package/dist/crawl/browser.js +498 -0
- package/dist/crawl/crawl.js +58 -0
- package/dist/crawl/diversity.js +153 -0
- package/dist/crawl/dns.js +194 -0
- package/dist/crawl/fetch.js +48 -0
- package/dist/crawl/frontier.js +370 -0
- package/dist/crawl/guard.js +69 -0
- package/dist/crawl/http.js +171 -0
- package/dist/crawl/links.js +89 -0
- package/dist/crawl/log.js +27 -0
- package/dist/crawl/network.js +88 -0
- package/dist/crawl/probe.js +107 -0
- package/dist/crawl/profile.js +33 -0
- package/dist/crawl/rdap.js +86 -0
- package/dist/crawl/resolve.js +132 -0
- package/dist/crawl/resources.js +233 -0
- package/dist/crawl/robots.js +100 -0
- package/dist/crawl/route.js +92 -0
- package/dist/crawl/scope.js +32 -0
- package/dist/crawl/scratch.js +15 -0
- package/dist/crawl/sitemap.js +187 -0
- package/dist/crawl/svcb.js +59 -0
- package/dist/crawl/tls-hello.js +297 -0
- package/dist/crawl/tls-probe.js +71 -0
- package/dist/facts/browser.js +138 -0
- package/dist/facts/byline.js +17 -0
- package/dist/facts/co2.js +27 -0
- package/dist/facts/csp.js +71 -0
- package/dist/facts/export.js +79 -0
- package/dist/facts/flatten.js +33 -0
- package/dist/facts/graph.js +73 -0
- package/dist/facts/headers.js +330 -0
- package/dist/facts/html.js +230 -0
- package/dist/facts/labels.js +89 -0
- package/dist/facts/language.js +32 -0
- package/dist/facts/parity.js +38 -0
- package/dist/facts/read-note.js +11 -0
- package/dist/facts/resources.js +46 -0
- package/dist/facts/robots.js +13 -0
- package/dist/facts/sites.js +140 -0
- package/dist/facts/transport.js +200 -0
- package/dist/facts/types.js +4 -0
- package/dist/facts/vendors.js +76 -0
- package/dist/fold/index.js +94 -0
- package/dist/groups/assign.js +45 -0
- package/dist/groups/sample.js +60 -0
- package/dist/i18n.js +92 -0
- package/dist/index.js +607 -0
- package/dist/interrupt.js +37 -0
- package/dist/logger.js +95 -0
- package/dist/plugins/axe.js +104 -0
- package/dist/plugins/carbon-txt.js +96 -0
- package/dist/plugins/cookies-registry.js +25 -0
- package/dist/plugins/cookies.js +168 -0
- package/dist/plugins/css.js +328 -0
- package/dist/plugins/dns.js +864 -0
- package/dist/plugins/feed-content.js +132 -0
- package/dist/plugins/feed-model.js +282 -0
- package/dist/plugins/feeds.js +836 -0
- package/dist/plugins/html-validate.js +191 -0
- package/dist/plugins/htmlhint.js +95 -0
- package/dist/plugins/icons.js +302 -0
- package/dist/plugins/images.js +269 -0
- package/dist/plugins/index.js +286 -0
- package/dist/plugins/keyboard.js +194 -0
- package/dist/plugins/lighthouse.js +110 -0
- package/dist/plugins/link-text.js +73 -0
- package/dist/plugins/list.js +22 -0
- package/dist/plugins/live.js +254 -0
- package/dist/plugins/mail.js +985 -0
- package/dist/plugins/manifest.js +97 -0
- package/dist/plugins/markup.js +98 -0
- package/dist/plugins/messages.js +25 -0
- package/dist/plugins/network.js +192 -0
- package/dist/plugins/origin.js +488 -0
- package/dist/plugins/profile-links.js +102 -0
- package/dist/plugins/schema-registry.js +101 -0
- package/dist/plugins/sshfp.js +159 -0
- package/dist/plugins/stack.js +161 -0
- package/dist/plugins/structured-data.js +358 -0
- package/dist/plugins/tls-probe.js +298 -0
- package/dist/plugins/tls-registry.js +418 -0
- package/dist/plugins/tls-scan.js +280 -0
- package/dist/plugins/trackers-registry.js +27 -0
- package/dist/plugins/trackers.js +56 -0
- package/dist/plugins/types.js +7 -0
- package/dist/plugins/visit.js +50 -0
- package/dist/plugins/well-known-registry.js +111 -0
- package/dist/plugins/well-known.js +732 -0
- package/dist/progress.js +162 -0
- package/dist/report/agent.js +122 -0
- package/dist/report/checkstyle.js +22 -0
- package/dist/report/csv.js +18 -0
- package/dist/report/html.js +266 -0
- package/dist/report/human.js +220 -0
- package/dist/report/index.js +16 -0
- package/dist/report/json.js +8 -0
- package/dist/report/printable.js +29 -0
- package/dist/report/rating.js +26 -0
- package/dist/report/sarif.js +100 -0
- package/dist/report/stats.js +46 -0
- package/dist/rules/builtin.js +465 -0
- package/dist/rules/caching.js +103 -0
- package/dist/rules/catalog.js +139 -0
- package/dist/rules/clock.js +48 -0
- package/dist/rules/declarative.js +234 -0
- package/dist/rules/deprecated.js +45 -0
- package/dist/rules/disclosure.js +99 -0
- package/dist/rules/fix.js +21 -0
- package/dist/rules/i18n.js +131 -0
- package/dist/rules/insights.js +100 -0
- package/dist/rules/length.js +52 -0
- package/dist/rules/message.js +48 -0
- package/dist/rules/relations.js +88 -0
- package/dist/rules/robots.js +75 -0
- package/dist/rules/rulesets.js +134 -0
- package/dist/rules/run.js +75 -0
- package/dist/rules/score.js +61 -0
- package/dist/rules/types.js +7 -0
- package/dist/rules/url.js +90 -0
- package/dist/server/analytics.js +49 -0
- package/dist/server/api.js +134 -0
- package/dist/server/clients.js +54 -0
- package/dist/server/clock.js +33 -0
- package/dist/server/compress.js +58 -0
- package/dist/server/health.js +14 -0
- package/dist/server/jobs.js +82 -0
- package/dist/server/main.js +83 -0
- package/dist/server/page.js +161 -0
- package/dist/server/policy.js +145 -0
- package/dist/server/providers.js +60 -0
- package/dist/server/queue.js +50 -0
- package/dist/server/scan.js +39 -0
- package/dist/server/settings.js +197 -0
- package/dist/server/web.js +353 -0
- package/dist/server/worker.js +129 -0
- package/dist/store/disk.js +215 -0
- package/dist/store/memory.js +18 -0
- package/dist/telemetry-environment.js +9 -0
- package/dist/telemetry.js +104 -0
- package/locales/es/LC_MESSAGES/messages.po +1864 -0
- package/locales/uk/LC_MESSAGES/messages.po +1864 -0
- package/package.json +134 -2
- package/presets/browser.yaml +26 -0
- package/presets/graph.yaml +35 -0
- package/presets/i18n.yaml +18 -0
- package/presets/insights.yaml +12 -0
- package/presets/links.yaml +22 -0
- package/presets/parity.yaml +59 -0
- package/presets/performance.yaml +271 -0
- package/presets/recommended.yaml +50 -0
- package/presets/redirects.yaml +23 -0
- package/presets/resources.yaml +29 -0
- package/presets/robots.yaml +13 -0
- package/presets/security-headers.yaml +257 -0
- package/presets/seo.yaml +380 -0
- package/presets/sitemap.yaml +34 -0
- package/presets/suggestions.yaml +97 -0
- package/presets/sustainability.yaml +16 -0
- package/presets/tls.yaml +72 -0
- package/presets/vendor.yaml +14 -0
- package/presets/web-comprehensive.yaml +17 -0
- package/presets/web-quick.yaml +15 -0
- package/src/server/apple-touch-icon.png +0 -0
- package/src/server/logo-36.png +0 -0
- package/src/server/logo-72.png +0 -0
- package/src/server/logo.png +0 -0
- package/vendors/dns.yaml +21 -0
- package/vendors/paths.yaml +55 -0
- package/vendors/stack.yaml +57 -0
package/vendors/dns.yaml
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: 2026 Damián Búho <damian.buho@proton.me>
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: AGPL-3.0-only
|
|
4
|
+
---
|
|
5
|
+
# Managed DNS providers; a zone is theirs when every one of its name servers matches one entry’s globs.
|
|
6
|
+
- provider: Cloudflare
|
|
7
|
+
match: ["*.ns.cloudflare.com"]
|
|
8
|
+
# SOA values are editable on Enterprise plans only.
|
|
9
|
+
soa-editable: false
|
|
10
|
+
docs: https://developers.cloudflare.com/dns/manage-dns-records/reference/dns-record-types/#soa
|
|
11
|
+
- provider: Amazon Route 53
|
|
12
|
+
match: ["ns-*.awsdns-*.{com,net,org,co.uk}"]
|
|
13
|
+
soa-editable: true
|
|
14
|
+
docs: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/SOA-NSrecords.html
|
|
15
|
+
- provider: Azure DNS
|
|
16
|
+
match: ["ns*-*.azure-dns.{com,net,org,info}"]
|
|
17
|
+
soa-editable: true
|
|
18
|
+
docs: https://learn.microsoft.com/en-us/azure/dns/dns-zones-records#soa-records
|
|
19
|
+
- provider: Google Cloud DNS
|
|
20
|
+
match: ["ns-cloud-*.googledomains.com"]
|
|
21
|
+
docs: https://docs.cloud.google.com/dns/docs/records
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: 2026 Damián Búho <damian.buho@proton.me>
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: AGPL-3.0-only
|
|
4
|
+
---
|
|
5
|
+
# Paths an edge or host serves on the site’s own origin; the first entry whose glob matches the path wins.
|
|
6
|
+
- vendor: Cloudflare
|
|
7
|
+
feature: cloudflare/email-obfuscation
|
|
8
|
+
match: /cdn-cgi/l/email-protection
|
|
9
|
+
kind: [page]
|
|
10
|
+
docs: https://developers.cloudflare.com/waf/tools/scrape-shield/email-address-obfuscation/
|
|
11
|
+
- vendor: Cloudflare
|
|
12
|
+
feature: cloudflare/email-obfuscation
|
|
13
|
+
match: /cdn-cgi/scripts/*/cloudflare-static/email-decode.min.js
|
|
14
|
+
kind: [resource]
|
|
15
|
+
docs: https://developers.cloudflare.com/waf/tools/scrape-shield/email-address-obfuscation/
|
|
16
|
+
- vendor: Cloudflare
|
|
17
|
+
feature: cloudflare/bot-challenge
|
|
18
|
+
match: /cdn-cgi/challenge-platform/**
|
|
19
|
+
kind: [page, resource]
|
|
20
|
+
docs: https://developers.cloudflare.com/bots/additional-configurations/javascript-detections/
|
|
21
|
+
- vendor: Cloudflare
|
|
22
|
+
feature: cloudflare/web-analytics
|
|
23
|
+
match: /cdn-cgi/rum
|
|
24
|
+
kind: [resource]
|
|
25
|
+
docs: https://developers.cloudflare.com/web-analytics/get-started/#sites-proxied-through-cloudflare
|
|
26
|
+
- vendor: Cloudflare
|
|
27
|
+
match: /cdn-cgi/trace
|
|
28
|
+
kind: [page]
|
|
29
|
+
docs: https://developers.cloudflare.com/support/troubleshooting/general-troubleshooting/gathering-information-for-troubleshooting-sites/
|
|
30
|
+
- vendor: Cloudflare
|
|
31
|
+
match: /cdn-cgi/image/**
|
|
32
|
+
kind: [page]
|
|
33
|
+
docs: https://developers.cloudflare.com/images/optimization/transformations/overview/
|
|
34
|
+
- vendor: Cloudflare
|
|
35
|
+
match: /cdn-cgi/**
|
|
36
|
+
kind: [page, resource]
|
|
37
|
+
docs: https://developers.cloudflare.com/fundamentals/reference/cdn-cgi-endpoint/
|
|
38
|
+
- vendor: Netlify
|
|
39
|
+
match: /.netlify/images
|
|
40
|
+
kind: [page]
|
|
41
|
+
docs: https://docs.netlify.com/build/image-cdn/overview/
|
|
42
|
+
- vendor: Vercel
|
|
43
|
+
feature: vercel/web-analytics
|
|
44
|
+
match: /_vercel/insights/**
|
|
45
|
+
kind: [page, resource]
|
|
46
|
+
docs: https://vercel.com/docs/analytics/quickstart
|
|
47
|
+
- vendor: Vercel
|
|
48
|
+
feature: vercel/speed-insights
|
|
49
|
+
match: /_vercel/speed-insights/**
|
|
50
|
+
kind: [page, resource]
|
|
51
|
+
docs: https://vercel.com/docs/speed-insights/quickstart
|
|
52
|
+
- vendor: Vercel
|
|
53
|
+
match: /_vercel/image
|
|
54
|
+
kind: [page]
|
|
55
|
+
docs: https://vercel.com/docs/image-optimization
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: 2026 Damián Búho <damian.buho@proton.me>
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: AGPL-3.0-only
|
|
4
|
+
---
|
|
5
|
+
# Services an origin runs on; a signal is a glob, and a service seen by two distinct signals is high confidence.
|
|
6
|
+
- name: cloudflare
|
|
7
|
+
kind: edge
|
|
8
|
+
# Published address ranges: downloaded into the `lists` bucket, the bundled ones when the download fails.
|
|
9
|
+
ranges:
|
|
10
|
+
lists: [https://www.cloudflare.com/ips-v4, https://www.cloudflare.com/ips-v6]
|
|
11
|
+
bundled: [173.245.48.0/20, 103.21.244.0/22, 103.22.200.0/22, 103.31.4.0/22, 141.101.64.0/18, 108.162.192.0/18, 190.93.240.0/20, 188.114.96.0/20, 197.234.240.0/22, 198.41.128.0/17, 162.158.0.0/15, 104.16.0.0/13, 104.24.0.0/14, 172.64.0.0/13, 131.0.72.0/22, "2400:cb00::/32", "2606:4700::/32", "2803:f800::/32", "2405:b500::/32", "2405:8100::/32", "2a06:98c0::/29", "2c0f:f248::/32"]
|
|
12
|
+
headers: {cf-ray: "*", server: cloudflare}
|
|
13
|
+
cookies: [__cf_bm, cf_clearance]
|
|
14
|
+
nameservers: ["*.ns.cloudflare.com"]
|
|
15
|
+
docs: https://developers.cloudflare.com/fundamentals/reference/http-headers/
|
|
16
|
+
- name: fastly
|
|
17
|
+
kind: edge
|
|
18
|
+
headers: {x-served-by: "cache-*", x-fastly-request-id: "*"}
|
|
19
|
+
docs: https://www.fastly.com/documentation/reference/http/http-headers/
|
|
20
|
+
- name: vercel
|
|
21
|
+
kind: host
|
|
22
|
+
headers: {x-vercel-id: "*", server: vercel}
|
|
23
|
+
paths: ["/_next/**", "/_vercel/**"]
|
|
24
|
+
docs: https://vercel.com/docs/headers/response-headers
|
|
25
|
+
- name: netlify
|
|
26
|
+
kind: host
|
|
27
|
+
headers: {x-nf-request-id: "*", server: netlify}
|
|
28
|
+
docs: https://docs.netlify.com/manage/routing/headers/
|
|
29
|
+
- name: github-pages
|
|
30
|
+
kind: host
|
|
31
|
+
headers: {server: GitHub.com, x-github-request-id: "*"}
|
|
32
|
+
docs: https://docs.github.com/en/pages
|
|
33
|
+
- name: wordpress
|
|
34
|
+
kind: cms
|
|
35
|
+
generator: ["WordPress*"]
|
|
36
|
+
headers: {link: "*api.w.org*"}
|
|
37
|
+
paths: ["/wp-content/**", "/wp-includes/**", "/wp-json/**"]
|
|
38
|
+
docs: https://developer.wordpress.org/
|
|
39
|
+
- name: drupal
|
|
40
|
+
kind: cms
|
|
41
|
+
generator: ["Drupal*"]
|
|
42
|
+
headers: {x-generator: "Drupal*", x-drupal-cache: "*"}
|
|
43
|
+
paths: ["/sites/default/files/**", "/core/misc/**"]
|
|
44
|
+
docs: https://www.drupal.org/docs
|
|
45
|
+
- name: nextjs
|
|
46
|
+
kind: framework
|
|
47
|
+
headers: {x-powered-by: "Next.js*"}
|
|
48
|
+
paths: ["/_next/static/**"]
|
|
49
|
+
docs: https://nextjs.org/docs
|
|
50
|
+
- name: nginx
|
|
51
|
+
kind: server
|
|
52
|
+
headers: {server: "nginx*"}
|
|
53
|
+
docs: https://nginx.org/en/docs/
|
|
54
|
+
- name: apache
|
|
55
|
+
kind: server
|
|
56
|
+
headers: {server: "Apache*"}
|
|
57
|
+
docs: https://httpd.apache.org/docs/
|