Textlint rule to check correct terms spelling
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.



textlint fixable rule Build Status npm

Textlint rule to check and fix terms, brands and technologies spelling in your tech writing in English.

For example:

  • Javascript → JavaScript
  • NPM → npm
  • front-end → frontend
  • website → site
  • Internet → internet

(You can customize the rules as you wish.)


npm install textlint-rule-terminology


textlint --fix --rule terminology Readme.md


You can configure the rule in your .textlintrc:

  "rules": {
    "terminology": {
      // Load default terms (see terms.json in the repository)
      "defaultTerms": true,
      // Syntax elements to skip. Overrides the default
      "skip": ["Blockquote"],
      // List of terms
      "terms": [
        // Exact spelling including the case
        // RegExp (case-insensitive) → replacement
        ["front[- ]end(\\w*)", "frontend$1"],
        ["back[- ]end(\\w*)", "backend$1"],
        ["web[- ]?site(s?)", "site$1"],
        ["hot[- ]key", "hotkey"],
        ["repo\\b", "repository"],
        ["CLI tool(s?)", "command line tool$1"],
        ["build system(s?)", "build tool$1"],
        ["id['’]?s", "IDs"],
        ["(\\w+[^.?!]\\)? )webpack", "$1webpack"],
        ["(\\w+[^.?!]\\)? )internet", "$internet"]
      // OR load terms from a file
      "terms": "~/terms.json",
      // OR load terms from npm
      "terms": "@johnsmith/terms"

Check the default terminology. Read more about configuring textlint.

Tips & tricks

Use textlint-filter-rule-comments to disable terminology check for particular paragraphs:

<!-- textlint-disable terminology -->

Oh my javascript!

<!-- textlint-enable -->

Other textlint rules

Change log

The change log can be found on the Releases page.


Everyone is welcome to contribute. Please take a moment to review the contributing guidelines.

Authors and license

Artem Sapegin and contributors.

MIT License, see the included License.md file.