{"id":1544,"date":"2025-07-22T00:05:00","date_gmt":"2025-07-22T07:05:00","guid":{"rendered":"https:\/\/catbradley.io\/?p=1544"},"modified":"2025-07-22T00:05:00","modified_gmt":"2025-07-22T07:05:00","slug":"i-found-a-new-open-source-grammar-checker-tool-and-i-like-it-well-kind-of","status":"publish","type":"post","link":"https:\/\/catbradley.io\/?p=1544","title":{"rendered":"I Found a New Open Source Grammar Checker Tool And I Like it&#8230; Well&#8230; Kind of"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-grammar-checker.png\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" \/><\/p>\n<p>When it comes to grammar checking, Grammarly is the premium tool for it. It&#8217;s a proprietary tool and it was among the first one to make a mark as a web-based Grammar checking tool.<\/p>\n<p>Then there is <a href=\"https:\/\/tidd.ly\/3UtGpd2\">LanguageTool<\/a> (partner link). This is the tool that we use here in our team. It is\/was open source, made in Germany and offers hosted service for free or for a price (you get additional features). LanguageTool was acquired a couple of years back and since then it&#8217;s privacy policy has changed as it processes data on US servers, instead of European ones.<\/p>\n<p>Recently, I came across a new grammar checker tool, Harper, and I am sharing my experience and my views on this new open source tool.<\/p>\n<h2>Meet Harper, a local first open source grammar checker<\/h2>\n<p>Harper is a new project coming from Automattic developer, Elijah Potter. Automattic is the company behind WordPress, world&#8217;s most <a href=\"https:\/\/itsfoss.com\/open-source-cms\/\" rel=\"noreferrer\">popular Content Management System<\/a> (CMS). <\/p>\n<p>The idea is to have a local first tool that doesn&#8217;t depend on the cloud for any processing or stores away the data. That&#8217;s a W right there. <\/p>\n<p>Harper is currently available as browser extension and plugin for Obsidian and VS Code. It is a new project and I hope they release more extensions, specially for LibreOffice, in the future. <\/p>\n<div class=\"kg-card kg-button-card kg-align-center\"><a href=\"https:\/\/writewithharper.com\/\" class=\"kg-btn kg-btn-accent\">Try Harper<\/a><\/div>\n<p>I tried the Firefox add-on and tested it while writing this review itself.<\/p>\n<h2>Features that I like<\/h2>\n<p>Now, Firefox already has a built-in spell checker and I believe Chrome and other browsers may also have it. So, do we need a third-party browser extension for this purpose? The short answer is yes.<\/p>\n<p>The built-in spell checker in Firefox is limited. It will underline even when you use a brand name. It is essentially a spell checker and hence it just checks for spelling mistakes. It won&#8217;t warn you if you use &#8220;the the&#8221; two times in row. It won&#8217;t warn you even if you write &#8216;an pineapple&#8217;. <\/p>\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-spell-check-features-1.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"813\" height=\"255\" \/><figcaption><span>Harper is definitely msarter than the default spellchecker of your web browser<\/span><\/figcaption><\/figure>\n<p>Harper does these things and it does that without interacting with a central server. Everything is processed locally.<\/p>\n<p>Here&#8217;s what Harper is capable of:<\/p>\n<ul>\n<li>Spell checking (obvious)<\/li>\n<li>Spotting repetition (example, double the the)<\/li>\n<li>Spotting multiple simultaneous spaces in a sentence<\/li>\n<li>Save words to dictionary (excellent)<\/li>\n<li>Correcting the use of a\/an<\/li>\n<li>Common misused words like &#8220;despite of&#8221; which should be &#8220;in spite of&#8221; or &#8220;despite&#8221; or &#8220;its\/it&#8217;s&#8221;<\/li>\n<li>Styling issue with comma usage<\/li>\n<\/ul>\n<p>Another interesting feature is that Harper uses different colors for different type of mistakes. This way it is easier to visualize the mistakes and their types.<\/p>\n<figure class=\"kg-card kg-image-card\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-different-colors.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"567\" height=\"422\" \/><\/figure>\n<p>The option to add strangely spelled words into the local dictionary is an excellent feature. <\/p>\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-add-to-dictionary-1.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"905\" height=\"268\" \/><figcaption><span>Save special words in your local dictionary<\/span><\/figcaption><\/figure>\n<p>You can access this local dictionary by accessing the extension settings.<\/p>\n<figure class=\"kg-card kg-image-card\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/access-harper-extension-settings-1-1.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"653\" height=\"295\" \/><\/figure>\n<p>And this is where you&#8217;ll see various settings that you can change. You can even bring your custom dictionary as long as the words are in their own line.<\/p>\n<p>You can also choose between American, British, Canadian, and Australian English dialect. <\/p>\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-settings.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"787\" height=\"319\" \/><figcaption><span>Harper extension settings<\/span><\/figcaption><\/figure>\n<div class=\"kg-card kg-callout-card kg-callout-card-blue\">\n<div class=\"kg-callout-emoji\">\ud83d\udccb<\/div>\n<div class=\"kg-callout-text\">As you can see, it seems Harper only supports English language at the time of writing this article.<\/div>\n<\/div>\n<p>There are also a huge list of rules that detects errors like &#8220;along time&#8221; and suggest &#8220;a long time&#8221; as the alternative. The list is huge and that&#8217;s why there is the option to search for a rule.<\/p>\n<p>There is no option to add your own rules though.<\/p>\n<figure class=\"kg-card kg-image-card\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/Harper-rules.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"835\" height=\"558\" \/><\/figure>\n<h2>Fast but how fast, rally?<\/h2>\n<p>Harper claims to be faster than both Grammarly and LanguageTool. I don&#8217;t have data to prove it. But I cal show you this video in which I show how quickly Harper gets into action as I type.<\/p>\n<figure class=\"kg-card kg-video-card kg-width-regular\" data-kg-thumbnail=\"https:\/\/itsfoss.com\/content\/media\/2025\/07\/harper-in-action-typing_thumb.jpg\" data-kg-custom-thumbnail>\n<div class=\"kg-video-container\">\n                <video src=\"https:\/\/itsfoss.com\/content\/media\/2025\/07\/harper-in-action-typing.mp4\" poster=\"https:\/\/img.spacergif.org\/v1\/926x360\/0a\/spacer.png\" width=\"926\" height=\"360\" loop autoplay muted playsinline preload=\"none\"><\/video>\n<div class=\"kg-video-overlay\">\n                    <button class=\"kg-video-large-play-icon\" aria-label=\"Play video\">\n<p>                    <\/p><\/button>\n                <\/div>\n<div class=\"kg-video-player-container kg-video-hide\">\n<div class=\"kg-video-player\">\n                        <button class=\"kg-video-play-icon\" aria-label=\"Play video\">\n<p>                        <\/p><\/button><br \/>\n                        <button class=\"kg-video-pause-icon kg-video-hide\" aria-label=\"Pause video\">\n<p>                        <\/p><\/button><br \/>\n                        <span class=\"kg-video-current-time\">0:00<\/span>\n<div class=\"kg-video-time\">\n                            \/<span class=\"kg-video-duration\">0:28<\/span>\n                        <\/div>\n<p>                        <button class=\"kg-video-playback-rate\" aria-label=\"Adjust playback speed\">1\u00d7<\/button><br \/>\n                        <button class=\"kg-video-unmute-icon\" aria-label=\"Unmute\"><\/button><\/p>\n<p>                        <br \/>\n                        <button class=\"kg-video-mute-icon kg-video-hide\" aria-label=\"Mute\"><\/button><\/p>\n<p>                        <\/p><\/div>\n<\/div>\n<\/div>\n<\/figure>\n<p>Since the processing is local, the suggestions are pretty fast actually.<\/p>\n<h2>Harper is not perfect, of course<\/h2>\n<p>For example, here I deliberately mistyped &#8220;video in&#8221; as &#8220;videoin&#8221; and Harper didn&#8217;t suggest it as one of the possible correct options.<\/p>\n<p>And I think it limits itself to suggest maximum three suggestions or the most it can fit in a line. <\/p>\n<figure class=\"kg-card kg-image-card kg-card-hascaption\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-limited-suggestions-1.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"786\" height=\"257\" \/><figcaption><span>Harper offers limited suggestions<\/span><\/figcaption><\/figure>\n<p>Another thing is that Harper is not as intelligent as I would want it to be. I am an excellent tester for grammar tools. I make so many mistakes and on so many levels that even the best grammar checkers throw in the towel.<\/p>\n<p>That&#8217;s why I tested Harper against LanguageTool with a sentence with multiple grammatical issues.<\/p>\n<p>Harper was primarily so focused on the spelling of Wikimedia and Cloudflare that it forgot to point out other grammatical mistakes. <\/p>\n<figure class=\"kg-card kg-image-card\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/harper-focus-spelling-1.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"765\" height=\"263\" \/><\/figure>\n<p>The weird thing is that both Cloudflare and Wikimedia were correctly spelled. Usually, Harper is good at recognizing brand names, except in this case where it made two false positives in a single sentence.<\/p>\n<p>On the other hand, LanguageTool did indicate that there are some grammatical mistakes worth looking for.<\/p>\n<figure class=\"kg-card kg-image-card\"><img decoding=\"async\" src=\"https:\/\/itsfoss.com\/content\/images\/2025\/07\/languagetool-focu-grammar-1.png\" class=\"kg-image\" alt=\"I Found a New Open Source Grammar Checker Tool And I Like it... Well... Kind of\" loading=\"lazy\" width=\"807\" height=\"282\" \/><\/figure>\n<p>Neither could correct the sentence entirely, as the correct sentence I was aiming for was:<\/p>\n<blockquote><p>Grammarly, LanguageTool, and Cloudflare went to a bar run by Wikimedia but it was closed, so they went to Wikipedia. <\/p><\/blockquote>\n<p>Yeah! I know. No AI can guess what goes in my mind when I make these typos. It takes real intelligence to deal with such stupidity \ud83d\ude1c<\/p>\n<p>At least in Ghost, the CMS I use to publish content on It&#8217;s FOSS, sometime the suggestions tooltip wouldn&#8217;t close until I start typing something. It&#8217;s minor but annoying.<\/p>\n<h2>Conclusion<\/h2>\n<p>Both Grammarly and LanguageTool have evolved to writing assistant with AI features. <\/p>\n<p>But here&#8217;s the thing. Sometime simplicity is the best feature you look for. Not everyone is a professional writer looking for additional features to improve their work.<\/p>\n<p>For a casual user, a no-fluff, simple grammar checker is more than sufficient to save them from embarrassing typos and grammatical mistakes in their emails.<\/p>\n<p>And Harper is an excellent choice at that. It is definitely better than your browser&#8217;s built-in spell checker, it is an <a href=\"https:\/\/github.com\/automattic\/harper\">open source software<\/a> and it processes your data locally. <\/p>\n<p>If you are not dependent on a more professional tool like LanguageTool or Grammarly, you should definitely &#8216;upgrade&#8217; to Harper.<\/p>","protected":false},"excerpt":{"rendered":"<p>When it comes to grammar checking, Grammarly is the premium tool for it. It&#8217;s a proprietary tool and it was among the first one to make a mark as a&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rop_custom_images_group":[],"rop_custom_messages_group":[],"rop_publish_now":"initial","rop_publish_now_accounts":[],"rop_publish_now_history":[],"rop_publish_now_status":"pending","footnotes":""},"categories":[1],"tags":[],"class_list":["post-1544","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-rss"],"_links":{"self":[{"href":"https:\/\/catbradley.io\/index.php?rest_route=\/wp\/v2\/posts\/1544","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/catbradley.io\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/catbradley.io\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/catbradley.io\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/catbradley.io\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1544"}],"version-history":[{"count":0,"href":"https:\/\/catbradley.io\/index.php?rest_route=\/wp\/v2\/posts\/1544\/revisions"}],"wp:attachment":[{"href":"https:\/\/catbradley.io\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1544"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/catbradley.io\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1544"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/catbradley.io\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}