A Python tool that parses text files for HTTP URLs and checks if they are still valid.
Deadlink is a Python-based command-line tool that scans text files to find HTTP URLs and verifies their validity. It helps developers and technical writers maintain working links in documentation and code by automatically detecting broken URLs before they cause problems.
Developers, technical writers, and maintainers who need to ensure URLs in their codebases, README files, and documentation remain functional over time.
Deadlink offers a simple, configurable solution for URL validation with concurrent checking and caching, making it faster than manual verification and more focused than general web crawlers.
:skull: Checks and fixes URLs in code and documentation.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports configurable concurrent requests (e.g., num_concurrent_requests = 5) for faster scanning, as shown in the config example, reducing overall check time for multiple URLs.
Allows customization of timeout, ignored hosts, and file extensions via a TOML config file, enabling adaptation to different project needs without code changes.
Includes a cache with TTL (e.g., cache_ttl_s = 259200) to avoid redundant checks on the same URLs, improving efficiency and reducing network load.
Offers an easy command-line interface with commands like 'deadlink check', making it straightforward to integrate into scripts or manual workflows.
Only validates HTTP/HTTPS links, ignoring other common protocols like mailto: or ftp:, which can be a gap for comprehensive link checking in mixed-content projects.
Cannot parse or check links that are generated or modified by JavaScript, making it ineffective for modern web applications or dynamic documentation sites.
Relies on Python and pip for installation and use, which may not be ideal in environments without Python or where minimal dependencies are preferred.