Quick Start
Scan a single URL
deadfinder url https://www.example.com
The terminal shows discovered links and their status:
▶ Fetching https://www.example.com
● Discovered 12 URLs, currently checking them. [anchor:8 / link:4]
├── ✓ [200] https://www.example.com/about
├── ✘ [404] https://www.example.com/old-page
└── ● Task completed
Exit code is 0 even when dead links exist — parse the output to make a build pass/fail decision.
Structured output
Write JSON to a file:
deadfinder url https://www.example.com -o output.json
cat output.json
{
"https://www.example.com": [
"https://www.example.com/old-page"
]
}
YAML, TOML, CSV, and SARIF are available via -f <format>. See Output formats.
Scan a sitemap
deadfinder sitemap https://www.example.com/sitemap.xml -o results.json
Scan many URLs
From a file:
cat > urls.txt <<'EOF'
https://www.example.com
https://docs.example.com
EOF
deadfinder file urls.txt -o results.json
From STDIN:
printf 'https://www.example.com\nhttps://docs.example.com\n' \
| deadfinder pipe -o results.json
Coverage report
--coverage adds a per-target summary with dead-link percentage:
deadfinder sitemap https://www.example.com/sitemap.xml --coverage -o results.json
Optionally render a PNG chart:
deadfinder sitemap https://www.example.com/sitemap.xml --coverage --visualize report.png