eslint-plugin-markdown-links is an ESLint plugin that provides rules for checking the validity of links and URLs in Markdown files. It helps you:
- Detect and report dead or unreachable URLs in Markdown documents
- Customize rule behavior via flexible configuration
This plugin is designed to work alongside @eslint/markdown and is especially useful for documentation, wikis, and codebases that rely on Markdown files.
- Reports dead or unreachable external URLs in Markdown files
- Supports flexible configuration for rule behavior
- Integrates with ESLint and works alongside @eslint/markdown
- Provides recommended config for easy setup
Try it live: Check out the Online Demo to see the plugin in action!
For detailed usage instructions, rule configurations, and examples, visit our comprehensive documentation site.
npm install --save-dev eslint @eslint/markdown eslint-plugin-markdown-linksUse eslint.config.js file to configure rules. See also: https://eslint.org/docs/latest/use/configure/configuration-files-new.
Example eslint.config.js:
import { defineConfig } from "eslint/config";
// import markdown from "@eslint/markdown";
import markdownLinks from "eslint-plugin-markdown-links";
export default [
// add more generic rule sets here, such as:
// markdown.configs.recommended,
markdownLinks.configs.recommended,
{
rules: {
// override/add rules settings here, such as:
// 'markdown-links/no-dead-urls': 'error'
},
},
];This plugin provides configs:
*.configs.recommended... Recommended config provided by the plugin.
See the rule list to get the rules that this plugin provides.
Is not supported.
The --fix option on the command line automatically fixes problems reported by rules which have a wrench 🔧 below.
The rules with the following star ⭐ are included in the configs.
| Rule ID | Description | Fixable | RECOMMENDED |
|---|---|---|---|
| markdown-links/no-dead-urls | disallow dead external link urls | ||
| markdown-links/no-missing-fragments | disallow missing fragment identifiers in same-file Markdown links | ||
| markdown-links/no-missing-path | disallow missing local file paths in Markdown links and images | ⭐ | |
| markdown-links/no-self-destination | disallow redundant self-destination links | ⭐ |
- eslint-plugin-markdown-preferences ... ESLint plugin that enforces our markdown preferences.
Welcome contributing!
Please use GitHub's Issues/PRs.
npm testruns tests and measures coverage.npm run updateruns in order to update readme and recommended configuration.
See the LICENSE file for license rights and limitations (MIT).