Alex is a single purpose linter to highlight potentially insensitive words on the basis of gender, race, religion or other potentially insensitive language. Such as:
He started the master node and connected two slaves to it.
In this case, Alex would suggest you replace “he” with “they” and use different terms for “master” and “slave.”
Alex is available for:
Another single purpose linter, Just Say No highlights so-called “hedge words,” which can often make your writing sound unconvincing, unconfident, or are unnecessary noise. Such as:
React seems like a good fit for your project.
In this case, the linter would suggest you replace “seems” with something more confident, such as:
React is a good fit for your project.
Just Say No is available for:
One of my favorite linters, write good highlights a selection of possible problems with your text, with checks that you can enable or disable. For example:
Just install the package, it’s really easy.
In this case, the linter highlights “just” and “really” as words that weaken the meaning of a sentence.
Write good is available for:
Proselint’s use is a little more vague than some of the others on this list, combining learning from a collection of “great” writers (in quote marks as this is subjective) to help you write better prose. It’s a little unclear what checks it undertakes, but as it works more broadly, analyzing whole sentences instead of individual words, it could help you find issues that other linters mentioned so far won’t.
For example:
In the centre of the center sat a bunch of cats. What were they doing.
In this case, prose would highlight the inconsistent spelling of center/centre and correct “bunch of cats” to “glaring of cats.” Here’s a full list of what it checks for.
Prose lint is available for:
Moving us into the bigger, more configurable linters, Vale combines a series of checks from other linters, and also lets you add your style definitions to check for, which is useful for in-house style guides. Thanks to this feature, others have contributed custom styles for write-good and proselint meaning you can use Vale to manage a selection of linters for you. You can create global or project level configuration files on a project basis that enable specific checks, and it supports more text formats than many of the linters here.
Because of this extensibility, it’s hard to provide a concrete example of what Vale recommends, but for example:
You are not old enough to be published.
Depending on what you’ve enabled, Vale would suggest replacing “not old enough” with “too young” (A “Litotes” check), and “be published” as an example of passive voice.
Vale is available for:
In a similar vein to Vale, Textlint is pluggable, configurable linter with support for many of the other linters (or similar) mentioned here. By default, nothing is enabled, and you need to create global or project level configuration files for Textlint to check anything. For example:
This is very useful, but how much is TBD.
In this case, the linter highlights “very” and “TBD” (as an unexpanded acronym).
Textlint is available for:
Again Coala combines several linters, aiming to create an all-in-one linter you can use for your entire project, code as well as documentation. You do this by adding “bears” that are other linters packaged to work with Coala, and this includes many of those on this list.
Coala is available for:
The list above are my favorite and most commonly used linters, and those with good editor support, but naturally, there are more.
Also, honorable mentions for tools like Hemmingway, Grammarly, Nitpicker, and Langauge Tool which I use on a regular basis, but are not optimized for technical writing and are all standalone tools that you can’t hook up to CI, or use with APIs etc.
Originally published at dzone.com.