textlint / textlint
textlint is the pluggable linter for natural language text.
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing textlint/textlint in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler viewtextlint > The pluggable linting tool for natural language. textlint is similar to ESLint, but it's for use with natural language. Website • Online demo • Searchable documents • Release blog Visit https://textlint.org/. Features • No bundled rules. • To use a rule, install a textlint rule via npm. • . • See collection of textlint rules • Markdown and plain text are supported by default. Support is available for HTML and other file formats via plugins. • Supports the use of custom formatters and formatter bundles formatter(reporter) Quick Tour For a quick tour of textlint, checkout our Getting Started guide :squirrel: Installation You can install the command using npm: **Requirements**: • Node.js 20+ If you're not sure what version of Node you're running, you can run in your console to find out. **:warning: Warning:** • If you have installed globally you must install each reference rule globally as well. • If you have installed locally you must install each rule locally as well. We recommend installing locally. For Node.js beginners If you've never used Node.js and npm, please see the following: • Installing Node.js and updating npm | npm Documentation Usage textlint has no default rules!! You can run textlint with config file. command creates file from installed rules. will be created like this: Lint files via textlint: load from current directory and lint . CLI Run for information on how to use the CLI. When running textlint, you can target files to lint using the glob patterns. Make sure that you enclose any glob parameter you pass in quotes. For more details, see CLI documentation. • Documentation: CLI Example: • :information_source: See examples/cli .textlintrc is config file that is loaded as JSON, YAML or JS via azu/rc-config-loader. Running textlint with the following arguments is equivalent to running in a directory with a containing the following json You can also configure options for specific rules in your file. For example here we pass the options ("key": "value") to . Options can be specified in your file as follows: :information_source: for more details see • docs/configuring • examples/config-file Plugin A textlint plugin is a set of rules and rulesConfig or customize parser. To enable plugin, put the "plugin-name" into . :information_source: See docs/plugin.md Supported file formats textlint supports Markdown and plain text by default. Install **Processor Plugin** and add new file format support. For example, if you want to lint HTML, use textlint-plugin-html as a plugin. npm install textlint-plugin-html --save-dev Add to Run textlint on files: textlint index.html • Example: examples/html-plugin • Documentation: docs/plugin.md Optional supported file types: • HTML: textlint-plugin-html • reStructuredText: textlint-plugin-rst • Fork: shiguredo/textlint-plugin-rst • AsciiDoc/Asciidoctor: textlint-plugin-asciidoc-loose • Re:VIEW: textlint-plugin-review • Org-mode: textlint-plugin-org See Processor Plugin List for details. Rules list :green_heart: • Check it: A Collection of textlint rule · textlint/textlint Wiki textlint has no built-in rules, but there are 100+ pluggable rules: • textlint-rule-no-todo • textlint-rule-max-number-of-lines • textlint-rule-common-misspellings • etc... See A Collection of textlint rule · textlint/textlint Wiki for more details. If you create a new rule, please add it to the wiki :) Fixable Some rules are fixable using the command line flag. Also, support dry run "dry run") mode. You can copy and paste to your README. Built-in formatters Use the following formatters: • stylish (defaults) • compact • checkstyle • github • jslint-xml • junit • tap • table • pretty-error • json • unix e.g. use formatter: More details in @textlint/linter-formatter. Use as node module You can use textlint as node module. Minimal usage: For more details, please read the following documents: • See docs/use-as-modules.md @textlint/kernel is a low level API for textlint. It is useful for the browser or non-Node.js environments. Conclusion textlint has four extensible points: • rule • rule is a rule for linting. • filter rule • filter rule is a rule for filtering result of errors. • rule-preset • rule-preset contains rules. • plugin • plugin contains a processor. FAQ: How to create rules? Please see docs/ • docs/txtnode.md • What is TxtNode? • docs/rule.md • How to create rules? • Tutorial: creating rule. • docs/rule-advanced.md • Advanced tutorial for creating rule. FAQ: How to suppress error by comments like ? You can use filter rule like textlint-filter-rule-comments. Please see Ignoring Text · textlint for more details. Integrations For more details, see integrations document. AI Assistants (MCP) textlint can be used as a Model Context Protocol (MCP) server, enabling AI assistants to interact with textlint directly: Supported editors: • VS Code with GitHub Copilot • Cursor • Windsurf • etc. For setup instructions, see MCP Setup Guide. App • textlint-app • Standalone cross platform app. No need Node.js environment. Build Systems • gulp plugin • gulp-textlint • Grunt plugin • grunt-textlint Editors • Atom Editor • 1000ch/linter-textlint • SublimeText • joeybaker/sublimelinter-textlint • Vim • vim-textlint • scrooloose/syntastic • See Markdown, Text and HTML of scrooloose/syntastic Wiki • VS Code • textlint/vscode-textlint • micro • hidaruma/micro-textlint-plugin • NetBeans • netbeans-textlint-plugin Browser • Chrome Extension • Chrome: textlint-proofreader • io-monad/textlint-chrome-extension: textlint Chrome Extension Other • Pronto: pronto-textlint • reviewdog: azu/textlint-reviewdog-example Who's using textlint? • survivejs/webpack-book") • hoodiehq/hoodie • asciidwango/js-primer • vuejs-jp/vuejs.org • cypress-io/cypress-documentation Packages This repository is a monorepo that we manage using Lerna. That means that we actually publish several packages to npm from the same cod…