Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/butuzov/deadlinks
Health checks for your documentation links. https://pypi.org/project/deadlinks
https://github.com/butuzov/deadlinks
broken-links cicd docs linter
Last synced: 7 days ago
JSON representation
Health checks for your documentation links. https://pypi.org/project/deadlinks
- Host: GitHub
- URL: https://github.com/butuzov/deadlinks
- Owner: butuzov
- License: apache-2.0
- Created: 2019-09-13T10:53:06.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-07-06T09:22:09.000Z (4 months ago)
- Last Synced: 2024-10-20T21:42:50.972Z (19 days ago)
- Topics: broken-links, cicd, docs, linter
- Language: Python
- Homepage:
- Size: 1.57 MB
- Stars: 95
- Watchers: 6
- Forks: 5
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- WebHackersWeapons - deadlinks - link`](/categorize/tags/broken-link.md)|![linux](/images/linux.png)![macos](/images/apple.png)![windows](/images/windows.png)[![Python](/images/python.png)](/categorize/langs/Python.md)| (Weapons / Tools)
- project-awesome - butuzov/deadlinks - Health checks for your documentation links. https://pypi.org/project/deadlinks (Python)
README
# deadlinks
[![Stand with Ukraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)](https://u24.gov.ua/)
[![PyPI](https://img.shields.io/pypi/v/deadlinks)](https://pypi.org/project/deadlinks/)
[![Github (CI)](https://img.shields.io/github/actions/workflow/status/butuzov/deadlinks/main.yaml?branch=master)](https://github.com/butuzov/deadlinks/actions/workflows/main.yaml)
[![codecov](https://codecov.io/gh/butuzov/deadlinks/branch/master/graph/badge.svg)](https://codecov.io/gh/butuzov/deadlinks)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/deadlinks)](https://pypi.org/project/deadlinks/)
---
Health checks for your documentation links.
---[![United 24](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner-personal-page.svg)](https://u24.gov.ua/)
[![Help Oleg Butuzov](https://raw.githubusercontent.com/butuzov/butuzov/main/personal.svg)](https://github.com/butuzov)---
## Features
- Concurrent and recursive checks
- Respect robots.txt restrictions (content only)
- External links checks
- Checking links within base url path
- Retries in the case of `502`, `503` and `504` http errors## Installing
### Using package installer for Python
```bash
# using pip - package installer for Python
pip install deadlinks
```### Mac
```bash
# we using custom tap to install deadlinks
brew install butuzov/deadlinks/deadlinks
```### Using forked repo for development propose.
```bash
# activate virtual environment to keep your local site-packages clean.
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip# in case if you developing within forked repository
cd /home/path/to/deadlinks
pip install -r requirements.txt
pip install -e .
```## Usage
See more examples at [docs](https://deadlinks.readthedocs.io/en/stable/)
```bash
# Check links (including external) at http://gobyexample.com/ in 10 threads,
# but not ones that leading to domains play.golang.org or github.com
deadlinks gobyexample.com -n 10 -e -d play.golang.org -d github.com# Limiting check only to links found within /docs path.
deadlinks http://localhost:1313/docs# Running checks for all local links that belong to a domain.
deadlinks http://localhost:1313/docs/ -n 10 --full-site-check# Checking local html files
deadlinks internal -n 10 --root=/var/html# Help yourself
deadlinks --help
```## Contributing
Here is a quick start guide to contributing to `deadlinks`
- Fork `deadlinks` repository.
- Create `feature` branch based on `develop`.
- Install package using [development](#using-forked-repo-for-development-propose) instructions.
- Implement your feature and test it with `make tests` and `make lints`.
- Create `pull request` back to `development` branch.All your contributions are welcome!