harper README

The project's README from github.com/Automattic/harper. As one markdown file: README.md.

Harper Binaries Website Checks Crates.io NPM Version Downloads Obsidian Plugin Downloads

Harper is an English grammar checker designed to be just right. I created it after years of dealing with the shortcomings of the competition.

Grammarly was too expensive and too overbearing. Its suggestions lacked context, and were often just plain wrong. Not to mention: it's a privacy nightmare. Everything you write with Grammarly is sent to their servers. Their privacy policy claims they don't sell the data, but that doesn't mean they don't use it to train large language models and god knows what else. Not only that, but the round-trip-time of the network request makes revising your work all the more tedious.

LanguageTool is great, if you have gigabytes of RAM to spare and are willing to download the ~16GB n-gram dataset. Besides the memory requirements, I found LanguageTool too slow: it would take several seconds to lint even a moderate-size document.

That's why I created Harper: it is the grammar checker that fits my needs. Not only does it take milliseconds to lint a document, take less than 1/50th of LanguageTool's memory footprint, but it is also completely private.

Harper is even small enough to load via WebAssembly.

Language Support

Harper currently only supports English, but the core is extensible to support other languages, so we welcome contributions that allow for other language support.

Performance Issues

We consider long lint times bugs. If you encounter any significant performance issues, please create an issue on the topic.

If you find a fix to any performance issue, we would appreciate the contribution. Just please make sure to read our contribution guidelines first.

Huge Thanks

This project would not be possible without the hard work from those who contribute.

Harper's logo was designed by Lukas Werner.

harper (Automattic/harper)

Searching Database…

16.6K ·GitHub
What is this?Harper is an offline, privacy-first English grammar checker written in Rust that runs locally instead of sending your text to a server.
Is this an app, or something I plug into my editor?It's a grammar-checking engine with a language server (harper-ls) and a WebAssembly build (harper.js), distributed as integrations for editors and browsers rather than a standalone desktop app.
How do I start using it?Install it as an extension for your editor of choice - there are official integrations for VS Code, Neovim, Helix, Emacs, Zed and Obsidian, or embed harper-ls / harper.js directly into your own tooling.
Do I need to set up a server or accounts to use it?No - Harper runs entirely offline on your machine, so no account, API key, or backend server is required.
Does it support languages other than English?Not yet - Harper currently only checks English, though the core architecture is designed to be extensible to other languages in the future.
Does my writing ever leave my computer?No, Harper is built to be completely private and processes everything locally instead of uploading your text like Grammarly does.
Why did the author build Harper instead of using Grammarly or LanguageTool?Grammarly was expensive, invasive, and sent all writing to its servers, while LanguageTool needed gigabytes of RAM and a 16GB dataset and was slow; Harper was built to lint in milliseconds using a fraction of that memory, all while staying fully private.
How fast and lightweight is Harper compared to LanguageTool?It takes milliseconds to lint a document and uses less than 1/50th of LanguageTool's memory footprint.
Creator
Automattic
Size
43.3 MB
Stars
16.6K
Age
2y
Commits · 90 Days