https://github.com/chrisgrieser/obsidian-proofreader

AI-based proofreading and stylistic improvements for your writing. Changes are inserted as suggestions directly in the editor, similar to suggested changes in word processing apps.

https://github.com/chrisgrieser/obsidian-proofreader

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: researchgate.net
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.7%) to scientific vocabulary

Keywords

obsidian-plugin proofreading writing-tool
Last synced: 6 months ago · JSON representation

Repository

AI-based proofreading and stylistic improvements for your writing. Changes are inserted as suggestions directly in the editor, similar to suggested changes in word processing apps.

Basic Info
  • Host: GitHub
  • Owner: chrisgrieser
  • License: mit
  • Language: TypeScript
  • Default Branch: main
  • Homepage:
  • Size: 220 KB
Statistics
  • Stars: 22
  • Watchers: 1
  • Forks: 5
  • Open Issues: 0
  • Releases: 36
Topics
obsidian-plugin proofreading writing-tool
Created 11 months ago · Last pushed 6 months ago
Metadata Files
Readme Funding License

README.md

Proofreader

Obsidian downloads GitHub download count Last release

AI-based proofreading and stylistic improvements for your writing. Changes are inserted as suggestions directly in the editor, similar to the suggested changes feature in word processing apps.

Showcase

Table of contents

Features

  • Suggested changes are inserted directly into the text: Additions as ==highlights== and removals as ~~strikethroughs~~.
  • Accept or reject changes with just one hotkey.
  • Easy to use: No complicated plugin settings and AI parameters to configure.

| | Professional proofreading service | Proofreader plugin | | ---------------------------------- | ----------------------------------------------- | ---------------------------------------------------------------------------- | | Cost for English text of 10,000 words | ~ $400, depending on the service | ~ \$0.01 – $0.06[^1] | | Completion duration | up to 3 work days | about 5 minutes | | Input format | usually Microsoft Word (.docx) | Markdown file in Obsidian | | Method of incorporating changes | mostly mouse clicks | keyboard shortcuts | | Additional benefits | Editor makes general comments on writing style. | Plugin can also be used to quickly proofread single sentences or paragraphs. |

[^1]: Estimated pricing for the GPT 4.1 nano model in April 2025. The plugin developer is not responsible if the actual costs differ. You can track your usage costs on this page.

[!NOTE] This plugin requires an OpenAI API key and incurs costs at OpenAI based on usage. Network requests are made when running the proofreading command. (PRs adding support for other LLMs are welcome.)

Installation & setup

Plugin installation

Install in Obsidian

Get an OpenAI API key

  1. Create an OpenAI account.
  2. Go to this site, and click Create new secret key.
  3. Copy the API key.
  4. In Obsidian, go to Settings → Proofreader and paste your API key there.

[!TIP] The usage costs should not be very high, nonetheless you can track them on this page.

Usage

  1. Use the command Proofread selection/paragraph to check the selected text. If there is no selection, the command will check the current paragraph.
    • Alternatively, you can also check the whole document with Proofread full document. However, note that the quality of AI suggestions tends to decrease when proofreading too much text at once.
  2. The changes are automatically inserted.
  3. Accept/reject changes with Accept suggestions in selection/paragraph and Reject suggestions in selection/paragraph.
    Same as the proofreading command, the accept and reject commands affect the current paragraph if there is no selection. Alternatively, you can also only accept/reject the next suggestion after your cursor via Accept next suggestion and Reject next suggestion.

Visual appearance of the changes

You can add the following CSS snippet to make highlights and strikethroughs appear like suggested changes, similar to the screenshot further above. (Manual: How to add CSS snippets.)

```css .cm-strikethrough { text-decoration-color: var(--color-red); }

.cm-s-obsidian span.cm-highlight { background-color: rgba(var(--color-green-rgb), 35%); } ```

Testimonials

I was paying $29 a month for type.ai until today, your plugin made me cancel the subscription, because the only feature I wanted from there was this inline granular diffing which no other app offered, until Proofreader. @samwega

Plugin development

General

```bash just init # run once after cloning

just format # run all formatters just build # builds the plugin just check # runs the pre-commit hook (without committing) ```

[!NOTE] This repo uses a pre-commit hook, which prevents commits that do not build or do not pass the checks.

Adding support for new LLMs

  1. Create a new adapter for the LLM in ./src/providers/. This should take ~50 lines of code.
  2. In ./src/providers/model-info.ts, add the adapter function to PROVIDER_ADAPTER_MAP, and add models for the new provider to MODEL_SPECS.
  3. In [./src/settings.ts], add a setting for the API key to ProofreaderSettingsMenu and add a field to DEFAULT_SETTINGS.

About the developer

In my day job, I am a sociologist studying the social mechanisms underlying the digital economy. For my PhD project, I investigate the governance of the app economy and how software ecosystems manage the tension between innovation and compatibility. If you are interested in this subject, feel free to get in touch.

Buy Me a Coffee at ko-fi.com

Owner

  • Name: Chris Grieser
  • Login: chrisgrieser
  • Kind: user
  • Location: Berlin, Germany
  • Company: Technical University of Berlin

Researcher in sociology & software developer

GitHub Events

Total
  • Create event: 37
  • Issues event: 4
  • Release event: 31
  • Watch event: 17
  • Delete event: 10
  • Issue comment event: 10
  • Push event: 157
  • Pull request event: 11
  • Fork event: 3
Last Year
  • Create event: 37
  • Issues event: 4
  • Release event: 31
  • Watch event: 17
  • Delete event: 10
  • Issue comment event: 10
  • Push event: 157
  • Pull request event: 11
  • Fork event: 3

Dependencies

.github/workflows/markdownlint.yml actions
  • DavidAnson/markdownlint-cli2-action v19 composite
  • actions/checkout v4 composite
.github/workflows/obsidian-plugin-release.yml actions
  • actions/checkout v4 composite
  • actions/setup-node v4 composite
  • softprops/action-gh-release v2 composite
.github/workflows/pr-title.yml actions
  • amannn/action-semantic-pull-request v5 composite
.github/workflows/stale-bot.yml actions
  • actions/stale v9 composite
versions.json meteor
package-lock.json npm
  • 196 dependencies
package.json npm
  • @biomejs/biome latest development
  • @types/node ^22.5.5 development
  • builtin-modules ^3.2.0 development
  • esbuild ^0.25.1 development
  • knip ^5.30.2 development
  • markdownlint-cli latest development
  • obsidian latest development
  • tslib 2.6.2 development
  • typescript ^5.6.2 development