# lycheeverse/lychee

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/lycheeverse-lychee).**

3,729 stars · 217 forks · Rust · Apache-2.0

## Links

- GitHub: https://github.com/lycheeverse/lychee
- Homepage: https://lychee.cli.rs
- awesome-repositories: https://awesome-repositories.com/repository/lycheeverse-lychee.md

## Description

Lychee is a command line link checker written in Rust that scans websites and local files to identify broken hyperlinks and invalid email addresses. It functions as an asynchronous link validator and static site auditor designed to ensure content accessibility and quality.

The tool features disk-based response caching to accelerate subsequent scans and avoid redundant network requests. It supports token-based API authentication for services like GitHub to bypass rate limits when verifying links on remote repositories.

The project covers a range of capabilities including multi-format content parsing for HTML and Markdown, relative path resolution, and regex-based link filtering. It can be integrated into continuous integration pipelines and pre-commit hooks to automate link validation during the development process.

## Tags

### Testing & Quality Assurance

- [Broken Link Scanners](https://awesome-repositories.com/f/testing-quality-assurance/broken-link-scanners.md) — Scans websites and local files to identify dead hyperlinks and invalid email addresses. ([source](https://github.com/lycheeverse/lychee/blob/master/README.md))
- [Link Integrity Verifiers](https://awesome-repositories.com/f/testing-quality-assurance/link-integrity-verifiers.md) — Verifies the validity of hyperlinks and email addresses using configurable HTTP methods and timeouts. ([source](https://github.com/lycheeverse/lychee/blob/master/lychee.example.toml))
- [Link Checkers](https://awesome-repositories.com/f/testing-quality-assurance/link-checkers.md) — A command line tool written in Rust that scans websites and files for broken hyperlinks.
- [Multi-Format Extractors](https://awesome-repositories.com/f/testing-quality-assurance/markdown-link-verifiers/multi-format-extractors.md) — Extracts URLs from HTML and Markdown files while using plain text extraction for other supported formats. ([source](https://github.com/lycheeverse/lychee/blob/master/README.md))
- [Quality Assurance Practices](https://awesome-repositories.com/f/testing-quality-assurance/testing-best-practices-methodologies/quality-assurance-practices.md) — Verifies that all links in Markdown and HTML files are functional to ensure documentation quality.

### Content Management & Publishing

- [Static Site Link Auditors](https://awesome-repositories.com/f/content-management-publishing/static-site-link-auditors.md) — Detects dead links in local directories or remote sites to ensure content accessibility and quality.

### Data & Databases

- [Asynchronous Validators](https://awesome-repositories.com/f/data-databases/sql-abstract-syntax-tree-parsing/syntax-validation/markdown-validations/link-and-metadata-validations/asynchronous-validators.md) — Implements a stream-based validator that checks URL integrity across formats using asynchronous requests.
- [Link Extraction](https://awesome-repositories.com/f/data-databases/url-crawl-queues/url-filtering-strategies/content-and-language-filtering/html-parsing-and-extraction/link-extraction.md) — Identifies URLs within HTML, Markdown, and plain text files using diverse parsing methods. ([source](https://github.com/lycheeverse/lychee#readme))
- [Concurrent Stream Processing](https://awesome-repositories.com/f/data-databases/concurrent-stream-processing.md) — Implements concurrent processing of network requests and file reads via asynchronous streams to maximize validation throughput.
- [Analysis Result Caches](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/caching-performance/caching-strategies/query-result-caching/method-result-caches/analysis-result-caches.md) — Caches previous link validation outcomes on disk to avoid redundant network requests across runs. ([source](https://github.com/lycheeverse/lychee/blob/master/lychee.example.toml))
- [HTTP Response Caching](https://awesome-repositories.com/f/data-databases/key-value-stores/response-caching/computational-result-caching/http-response-caching.md) — Caches HTTP responses on disk to avoid redundant network requests across multiple scanning runs.
- [Runtime Request Caching](https://awesome-repositories.com/f/data-databases/performance-caching-systems/cache-size-and-timeout-configurations/runtime-request-caching.md) — Saves HTTP responses to disk to accelerate subsequent validation runs and minimize network traffic. ([source](https://github.com/lycheeverse/lychee/blob/master/README.md))

### Development Tools & Productivity

- [Continuous Integration Validators](https://awesome-repositories.com/f/development-tools-productivity/continuous-integration-validators.md) — Provides an automated engine for checking hyperlink integrity within CI pipelines and pre-commit hooks.
- [Link Extraction](https://awesome-repositories.com/f/development-tools-productivity/file-indexing-utilities/multi-format-document-parsing/link-extraction.md) — Extracts URLs from HTML, Markdown, and plain text files using specialized parsing logic for each format.

### DevOps & Infrastructure

- [CI/CD Pipeline Integrations](https://awesome-repositories.com/f/devops-infrastructure/ci-cd-pipeline-integrations.md) — Integrates into continuous integration pipelines and pre-commit hooks to automate link validation.
- [Continuous Integration Checks](https://awesome-repositories.com/f/devops-infrastructure/continuous-integration-pipelines/continuous-integration-checks.md) — Integrates into CI/CD pipelines and pre-commit hooks to automate broken link detection. ([source](https://github.com/lycheeverse/lychee#readme))

### Graphics & Multimedia

- [Hyperlink Management](https://awesome-repositories.com/f/graphics-multimedia/graphics-and-media/media-and-hyperlink-embedders/hyperlink-management.md) — Scans text files and websites to identify broken hyperlinks and invalid email addresses. ([source](https://github.com/lycheeverse/lychee#readme))

### Software Engineering & Architecture

- [URL Relative Path Resolvers](https://awesome-repositories.com/f/software-engineering-architecture/runtime-path-resolvers/path-normalizers/path-relation-calculations/url-relative-path-resolvers.md) — Resolves relative hyperlinks into absolute addresses based on a root directory or base URL.
- [High-Throughput Link Validation](https://awesome-repositories.com/f/software-engineering-architecture/high-throughput-link-validation.md) — Checks thousands of links efficiently using async Rust streams and local caching.

### Part of an Awesome List

- [Web Crawling and Scraping](https://awesome-repositories.com/f/awesome-lists/devtools/web-crawling-and-scraping.md) — Crawls remote websites to extract and verify the reachability of all hyperlinks.
- [Quality Assurance Tools](https://awesome-repositories.com/f/awesome-lists/devtools/quality-assurance-tools.md) — Fast link checker for documentation and websites.

### Networking & Communication

- [Email Address Validators](https://awesome-repositories.com/f/networking-communication/email-address-validators.md) — Verifies that email addresses found in text or websites are valid and reachable. ([source](https://github.com/lycheeverse/lychee/blob/master/docs/TROUBLESHOOTING.md))

### Security & Cryptography

- [GitHub Authentication](https://awesome-repositories.com/f/security-cryptography/access-authentication/github-authentication.md) — Integrates GitHub personal access tokens to bypass API rate limits when checking remote repository links. ([source](https://github.com/lycheeverse/lychee/blob/master/docs/TROUBLESHOOTING.md))
- [URL Regex Filters](https://awesome-repositories.com/f/security-cryptography/content-filtering-rules/response-analysis-filters/url-pattern-filters/url-regex-filters.md) — Provides regular expression filters to exclude specific URLs or directories from the scanning process.
- [API Request Authentication](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/machine-and-protocol-identity/api-machine-authentication/api-request-authentication.md) — Authenticates requests to remote repositories using security tokens to ensure continuous link verification. ([source](https://github.com/lycheeverse/lychee#readme))
- [Token-Based Authentication](https://awesome-repositories.com/f/security-cryptography/security-and-access-control/token-based-authentication.md) — Uses security tokens in HTTP headers to authenticate requests and bypass API rate limits.
