LanguageTool is a free, open source browsers & extensions project written in Java and released under LGPL-2.1. It has 15,042 GitHub stars, 1,581 forks and 2,148 open issues, and was last pushed 10 hours ago. On this registry it ranks #27 of 65 tracked projects in Browsers & Extensions, and is listed as an open source replacement for 1 paid product, with 5 head-to-head comparisons available. It gained 28 stars over the last 6 tracked days.

LanguageTool — AI-powered grammar checker for 30+ languages

What is LanguageTool?

What it is

LanguageTool is open-source proofreading software for English, Spanish, French, German, Portuguese, Polish, Dutch, and more than 20 other languages. Its tagline describes it as an AI-powered grammar checker for 30+ languages, while the repository description calls it a style and grammar checker for 25+ languages. The project lives in the natural-language processing and productivity ecosystem, where it helps writers, editors, and applications detect errors that a simple spell checker cannot find.

The concrete problem it solves is the gap between basic spellchecking and full proofreading. Many mistakes are not misspelled words, but grammar, style, and language-specific usage errors. LanguageTool provides a Java-based core under the LGPL 2.1 license, with server, command-line, graphical, API, and extension options so users can check text inside their own tools or on their own infrastructure.

Key capabilities

  • LanguageTool proofreads text in English, Spanish, French, German, Portuguese, Polish, Dutch, and more than 20 other languages.
  • LanguageTool detects grammar, style, and proofreading errors that a simple spell checker cannot detect.
  • The project provides an HTTP API and a public HTTP API for checking text through web requests.
  • The project provides a Java API and Javadoc for embedding LanguageTool inside Java applications.
  • The installer and build scripts support server, command-line, and GUI modes.
  • The installer offers packages for standalone use, Wikipedia use, and the LibreOffice/OpenOffice extension.
  • The development overview and dev pages allow contributors to add error detection rules.

Who uses it and how

  • Writers and editors use the GUI, command line, or office extension to proofread documents in supported languages.
  • Developers use the HTTP API or Java API to add grammar and style checks to applications, websites, or services.
  • Self-hosters run a LanguageTool server through community Docker images or scripted installation.
  • Wikipedia-related workflows can use the Wikipedia package mentioned by the installer.
  • Contributors extend the rule set and help improve error detection for the supported languages.

Getting started

Users can try community Docker images such as meyay/languagetool, erikvl87/languagetool, or silviof/docker-languagetool. They can also run the provided install.sh script to build or install packages, or clone the repository and build from source with Java 17 and Apache Maven.

When to use it — and when not to

LanguageTool is useful when open-source licensing, local control, API integration, or multilingual proofreading matter more than a hosted proprietary service. It is positioned as an open alternative to Grammarly, but the provided facts do not describe feature parity. Self-hosting requires operating the server, Docker image, or build environment, and the repository lists 2,148 open issues; a complete clone requires more than 500 MiB to download and more than 1,500 MiB on disk.

project readme (upstream, from github) — read inline

LanguageTool

LanguageTool is open-source proofreading software for English, Spanish, French, German, Portuguese, Polish, Dutch, and more than 20 other languages. It finds many errors that a simple spell checker cannot detect.

For more information, please see our homepage, at languagetool.org, this README, and CHANGES.

The LanguageTool core (this repo) is freely available under the LGPL 2.1 or later.

Docker

Try one of the following projects for a community-contributed Docker file:

Contributions

The development overview describes how you can contribute error detection rules.

For more technical details, see our dev pages.

Scripted installation and building

To install or build using a script, simply type:

#!/usr/bin/env sh
curl -L https://raw.githubusercontent.com/languagetool-org/languagetool/master/install.sh | sudo bash $options

If you wish to have more options, download the install.sh script. Usage options follow:

sudo bash install.sh <options>

Usage: install.sh <option> <package>
Options:
   -h --help                   Show help
   -b --build                  Builds packages from the bleeding edge development copy of LanguageTool
   -c --command <command>      Specifies post-installation command to run (default gui when screen is detected)
   -q --quiet                  Shut up LanguageTool installer! Only tell me important stuff!
   -t --text <file>            Specifies what text to be spellchecked by LanguageTool command line (default spellcheck.txt)
   -d --depth <value>          Specifies the depth to clone when building LanguageTool yourself (default 1).
   -p --package <package>      Specifies package to install when building (default all)
   -o --override <OS>          Override automatic OS detection with <OS>
   -a --accept                 Accept the oracle license at http://java.com/license. Only run this if you have seen the license and agree to its terms!
   -r --remove <all/partial>   Removes LanguageTool install. <all> uninstalls the dependencies that were auto-installed. (default partial)

Packages(only if -b is specified):
   standalone                  Installs standalone package
   wikipedia                   Installs Wikipedia package
   office-extension            Installs the LibreOffice/OpenOffice extension package

Commands:
   GUI                         Runs GUI version of LanguageTool
   commandline                 Runs command line version of LanguageTool
   server                      Runs server version of LanguageTool

Alternate way to build from source

Before start: you will need to clone from GitHub and install Java 17 and Apache Maven.

Warning: a complete clone requires downloading more than 500 MiB and needs more than 1 500 MiB on disk. This can be reduced, if you only need the last few revisions of the master branch by creating a shallow clone:

#!/usr/bin/env sh
git clone --depth 5 https://github.com/languagetool-org/languagetool.git

A shallow clone downloads less than 60 MiB, and needs less than 200 MiB on disk.

In the root project folder, run:

#!/usr/bin/env sh
mvn clean test

(Sometimes, you can skip Maven step for repeated builds.)

#!/usr/bin/env sh
./build.sh languagetool-standalone package -DskipTests

Test the result in languagetool-standalone/target/.

#!/usr/bin/env sh
./build.sh languagetool-wikipedia package -DskipTests

Test the result in languagetool-wikipedia/target.

Now, you can use the bleeding edge development copy of LanguageTool *.jar files, be aware that it might contain regressions.

How to run under Mac M1 or M2

  1. Install Brew for Rosetta:

    #!/usr/bin/env sh
    arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
    
  2. Install OpenJDK for Rosetta:

    #!/usr/bin/env sh
    arch -x86_64 brew install openjdk
    
  3. Install Maven for Rosetta:

    #!/usr/bin/env sh
    arch -x86_64 brew install maven
    
  4. Now, run the build scripts.

License

Unless otherwise noted, this software – the LanguageTool core – is distributed under the LGPL; see COPYING.txt.

Frequently asked questions

Is LanguageTool free to use?

LanguageTool is open source under the LGPL-2.1 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does LanguageTool do?

AI-powered grammar checker for 30+ languages

What is LanguageTool written in?

LanguageTool is primarily written in Java. Its source is publicly available at https://github.com/languagetool-org/languagetool, and it has 15,042 GitHub stars.

What is a good open source alternative to Grammarly?

LanguageTool is one of the open source options listed as an alternative to Grammarly. Compare licences, stars and activity side by side on the LanguageTool profile.