Fast, async, stream-based link checker written in Rust. Finds broken URLs and mail addresses inside Markdown, HTML, reStructuredText, websites and more!
Find a file
2020-08-09 23:12:25 +02:00
.github/workflows Create rust.yml 2020-08-08 00:09:48 +02:00
assets Add logging and proper URL parsing 2020-08-07 19:00:21 +02:00
fixtures Add more links 2020-08-09 22:43:11 +02:00
src Switch to linkify to cover non MD links 2020-08-09 23:12:25 +02:00
.gitignore Extract from hello-rust/show repository 2020-08-05 00:32:37 +02:00
Cargo.lock Switch to linkify to cover non MD links 2020-08-09 23:12:25 +02:00
Cargo.toml Switch to linkify to cover non MD links 2020-08-09 23:12:25 +02:00
README.md Update 2020-08-09 22:56:54 +02:00

lychee

Rust

...because who says I can't write yet another link checker.

What?

This thing was created from Hello Rust Episode 10. It's a link checker that treats Github links specially by using a GITHUB_TOKEN to avoid getting blocked by the bot protection.

Why?

The existing link checkers were not flexible enough for my use-case. lychee can...

  • Handle chunked encodings
  • Handle gzip
  • Fake user agents (required for some firewalls)
  • Skip non-links like anchors or relative URLs
  • SOON: Ignore SSL certificate errors
  • SOON: fully async code execution

How?

cargo install lychee

Set an environment variable with your token like so GITHUB_TOKEN=xxxx.

Run it inside a repository with a README.md or specify a different Markdown file with

lychee --input <yourfile.md>

Thanks

...to my Github sponsors and Patreon sponsors for supporting these projects. If you want to help out as well, go here.