raviqqe / liche

Fast Link Checker for Markdown and HTML in Go
MIT License
125 stars 31 forks source link
go html linter markdown

DEPRECATION NOTICE

Sorry this project is not actively maintained anymore! 😢 Please consider migrating to one of the alternatives listed below.

Alternatives

Why is it not maintained anymore?

It's because we found several problems with the goals of the project and the amount of work it needs.

The goal of this software was originally to check links in Markdown files which are compiled into HTML files and served via HTTP servers. But that raises the following problems.

It needs a lot of work to support all these different use cases. In short, we need to emulate different Markdown file compilers and HTTP servers as well as web browsers.

But I still want this...

If you think this software is still valuable for you even in comparison with the alternatives listed above and want it to be maintained, please let us know by posting a new issue.

liche

Circle CI Codecov Go Report Card License

asciicast

liche is a command to check links' connectivity in Markdown and HTML files. It checks all a and img tags in specified files.

Installation

go get -u github.com/raviqqe/liche

Usage

> liche --help
Link checker for Markdown and HTML

Usage:
    liche [-c <num-requests>] [-d <directory>] [-r] [-t <timeout>] [-x <regex>] [-v] <filenames>...

Options:
    -c, --concurrency <num-requests>  Set max number of concurrent HTTP requests. [default: 512]
    -d, --document-root <directory>  Set document root directory for absolute paths.
    -r, --recursive  Search Markdown and HTML files recursively
    -t, --timeout <timeout>  Set timeout for HTTP requests in seconds. Disabled by default.
    -x, --exclude <regex>  Regex of links to exclude from checking.
    -v, --verbose  Be verbose.

Examples

> liche file.md
> liche file1.md file2.md
> liche file.html
> liche file1.html file2.html
> liche -r directory # Search all Markdown and HTML files recursively.

Supported properties

Also supports relative and absolute paths. (Absolute paths need --document-root option.)

License

MIT