What is lychee and what does it do?

Updated

lychee is a fast, asynchronous link checker written in Rust. It scans Markdown, HTML, and other files for broken hyperlinks and email addresses, and it is designed to be simple and lightweight enough for docs, websites, and codebases. If you maintain documentation or a site and want to catch dead links quickly, lychee is built for that job.

What lychee checks

lychee looks for links and email addresses in your content and verifies whether they still resolve. Its core purpose is finding broken hyperlinks and mail addresses, so you can fix them before readers hit a dead end.

The tool is positioned for:

  • Documentation projects
  • Websites
  • Codebases

Key capabilities

Async and fast

lychee is built with Rust and designed for speed, which the project says makes it a good fit for large projects. Because it works asynchronously, it can check many links without waiting on each one in sequence.

Markdown and HTML support

lychee natively supports Markdown and HTML files. That makes it directly useful for documentation and websites, where those formats are common.

Single static binary

lychee is distributed as a single static binary. That means installation and updates stay simple, with no complex runtime setup described.

JSON output for CI/CD

lychee can produce structured JSON output, which makes it easy to integrate into CI/CD pipelines. You can run it as part of an automated check and consume the results programmatically.

When to use it

Choose lychee if you want a link checker that:

  • Runs quickly across a large set of files
  • Handles Markdown and HTML natively
  • Installs as one static binary
  • Fits into automated pipelines via JSON output

If your main need is catching broken links and email addresses in docs, sites, or code, lychee is aimed squarely at that task.