Harper: офлайн-грамматика на Rust от Automattic

«Ваш текст никогда не покидает ваш компьютер» — главный принцип Harper.

Большинство грамматических проверщиков требуют подключения к интернету, отправляют текст на удалённые серверы и нередко берут деньги за подписку. Harper меняет правила игры — это open-source, офлайн-инструмент с акцентом на приватность, идеальный для разработчиков, писателей и всех, кто ценит скорость и безопасность данных.

Что такое Harper и для кого он?

Harper начинался как личный проект разработчика Элайджи Поттера и был приобретён компанией Automattic в конце 2024 года. Сегодня его поддерживает Automattic — компания, стоящая за WordPress.com, Tumblr и WooCommerce.

Harper — это локальный грамматический проверщик, который отлавливает неправильное использование заглавных букв, опечатки, неудачные формулировки и грамматические ошибки, не отправляя ваш текст ни на какой сервер.

Целевая аудитория:

  • Разработчики — проверка комментариев в коде и технической документации
  • Технические писатели — точный контроль формулировок без утечки данных
  • Авторы заметок в Obsidian — встроенный плагин для проверки прямо в хранилище
  • Все, кто заботится о приватности — никакой отправки текста в облако
ℹ Кто стоит за проектом
Harper — не очередной broner-проект выходного дня. Это необычно для данной категории, где большинство бесплатных грамматических проверщиков тихо умирают через год. За Harper стоит Automattic с полноценной командой разработчиков.

Архитектура: как это устроено

Технически Harper — это прежде всего языковой сервер. Ядро написано на Rust (крейт harper-core), обёрнуто в harper-ls (Language Server Protocol) и harper.js (JavaScript-библиотека), а также компилируется в WebAssembly.


graph LR
    A[harper-core\nRust crate] --> B[harper-ls\nLSP сервер]
    A --> C[harper.js\nWebAssembly]
    B --> D[VS Code]
    B --> E[Neovim / Emacs / Zed]
    B --> F[Sublime Text / Helix]
    C --> G[Браузерные расширения\nChrome / Firefox]
    C --> H[Obsidian Plugin]
    C --> I[WordPress Plugin]
    A --> J[Harper Desktop\nmacOS]

Такая архитектура объясняет мгновенную скорость работы: проект рассматривает медленный линтинг как баг и заявляет о проверке документа за миллисекунды, потребляя менее 1/50 памяти LanguageTool.

Ключевые возможности

1. Полная офлайн-работа и приватность

Каждая проверка происходит локально. Никаких обращений к облаку, никакой телеметрии, никакого LLM в процессе. Это гарантирует, что Harper никогда не обучает модели на вашем тексте.

2. Молниеносная скорость

Измеренное время отклика на одном документе (данные из официального COMPARISON.md и сообщества Hacker News):

Harper — 10 мс, LanguageTool — 650 мс, Grammarly — 4000 мс.

3. Широкий набор интеграций

Harper распространяется как языковой сервер (harper-ls), JavaScript/WebAssembly-библиотека (harper.js), Rust-крейт (harper-core), расширения для Chrome и Firefox, плагины для VS Code, Neovim, Helix, Emacs, Zed и Sublime Text, плагин для Obsidian, плагин для блочного редактора WordPress и нативное macOS-приложение.

4. Поддержка нескольких диалектов английского

Harper поддерживает американский, британский, канадский и австралийский английский, спроектирован лёгким, эффективным и легко интегрируемым в веб- и десктопные приложения.

5. Что проверяется

Harper отлавливает ошибки, которые реально важны: неправильные заглавные буквы, опечатки, неудачные формулировки и нарушения грамматики.

Harper особенно хорошо справляется с ошибками, типичными для технического письма — некорректная капитализация, опечатки и неуклюжие формулировки, которые делают документацию непонятной.

Пример: установка через Homebrew (macOS)

# Установка Harper
brew install harper

# Запуск языкового сервера
harper-ls --stdio
// Конфигурация harper-ls для Neovim (init.lua)
require('lspconfig').harper_ls.setup({
  settings = {
    ["harper-ls"] = {
      userDictPath = "~/.config/harper/dict.txt",
      linters = {
        SpellCheck = true,
        Capitalization = true,
        LongSentences = false
      }
    }
  }
})
💡 Совет для разработчиков
Harper — это не просто spell-checker: он понимает грамматику, стиль и даже комментарии в коде, что особенно удобно для разработчиков, пишущих документацию.

Цены и лицензия

Harper полностью бесплатен — нет платного тарифа, нет аккаунта, нет лимитов использования. Исходный код опубликован под лицензией Apache 2.0 на GitHub. Automattic финансирует разработку, не взимая плату с пользователей.

ТарифЦенаОграничения
Единственный (Free)$0 / бесплатноНет лимитов
Open Source (Apache 2.0)$0Можно форкать и встраивать
⚠ Важно
Условия могут изменяться со временем — проверяйте актуальную информацию на writewithharper.com.

Плюсы и минусы

✅ Плюсы❌ Минусы
Полностью бесплатно и open-sourceТолько английский язык
Работает офлайн, данные не покидают устройствоНет стилистических рекомендаций (как у Grammarly Pro)
Молниеносная скорость (~10 мс)Не работает системно на macOS вне поддерживаемых редакторов
Мизерное потребление памяти (1/50 от LanguageTool)Бывают ложные срабатывания на брендовые названия
Огромный список интеграцийНет предиктивного ввода / автодополнения
Лицензия Apache 2.0, можно встраиватьНет мобильных приложений
Активная поддержка от AutomatticТребует ручной настройки LSP в ряде редакторов

Сравнение с альтернативами

ПараметрHarperLanguageToolGrammarly
ЦенаБесплатноFree / Premium (~€60/год)Free / Premium (~$144/год)
ЛицензияApache 2.0LGPL-2.1Проприетарная
Офлайн-режим✅ Полный🟡 Частично (self-hosted)❌ Облачный
Скорость отклика~10 мс~650 мс~4000 мс
Потребление памятиМинимальноеВысокое (16 ГБ n-gram)Высокое
ЯзыкиТолько English20+ языков🟡 Ограниченно
Стиль / тон🟡 Частично✅ Полный
Интеграция с IDE✅ LSP🟡 Через ltex-ls🟡 Через плагин
Приватность✅ Локальная🟡 Зависит от конфигурации❌ Данные в облаке
WebAssembly / браузер🟡 Расширение

LanguageTool хорош, если у вас есть гигабайты оперативной памяти и желание скачивать ~16 ГБ n-gram датасет; помимо требований к памяти, он медленный — линтинг даже среднего документа занимает несколько секунд.

По точности, приватности и стоимости Harper выигрывает — он бесплатный, локальный и очень быстрый. Для переработки стиля и тональности Grammarly делает больше, потому что это другая задача. Если вам нужно ловить ошибки, а не переписывать предложения — Harper побеждает.

📝 Реальный кейс
Разработчик пишет техническую документацию в Neovim. Harper через LSP в реальном времени подчёркивает «improper capitalization» в комментариях к коду — без задержек, без интернета, без опасений, что черновики API-документации утекут в облако Grammarly.

Вердикт: кому подойдёт Harper?

Harper идеален для:

  • Разработчиков, которые хотят проверять grammar прямо в своём редакторе
  • Технических писателей с требованиями к приватности данных
  • Пользователей Obsidian, ведущих заметки на английском
  • Всех, кто ищет быструю нулевую альтернативу Grammarly
  • Команд, которым нужен встраиваемый grammar-движок для своего продукта

Harper не подойдёт, если:

  • Вы пишете не на английском языке
  • Вам нужны глубокие стилистические рекомендации и переформулировки
  • Вы хотите проверку в любом приложении системы без дополнительной настройки

Рейтинг: 8.5 / 10

Harper — лучший бесплатный опенсорс офлайн-грамматический проверщик из доступных сегодня. Это не замена Grammarly Premium для редактирования художественного текста, но для технического письма с упором на скорость и приватность — эталонный инструмент.