Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Side-by-Side Diff

Nico BlumNico Blum743 downloads

Compare, review, and selectively merge two text files in a side-by-side view.

Add to Obsidian
Side-by-Side Diff screenshot
  • Overview
  • Scorecard
  • Updates8

Add to Obsidian

Compare two text files in a side-by-side file diff viewer. Review line changes with inline highlighting and selectively accept or reject edits; changes are written only when explicitly saved.

Compare, review, accept: Every change remains visible and is written to the vault only when you save.

Side-by-Side Diff comparison view

Contents

  • At a glance
  • Quick start
  • Three workflows
  • Edit and save
  • Installation
  • Feedback and support
  • Privacy and permissions
  • Releases
  • Documentation
  • Development
  • Tests

At a glance

  • compare two text files side by side in sync
  • select two files in the file explorer and choose Compare files to open the comparison directly
  • detect line changes and inline differences within changed lines
  • navigate between changes with Next change / Previous change, Alt+ArrowDown / Alt+ArrowUp, and automatic scrolling
  • automatically continue with the next open change after accepting or ignoring one (configurable, enabled by default)
  • accept individual changes on the right or deliberately ignore them
  • group contiguous changed lines, or lines separated only by blank lines, into one block, with Accept all / Ignore all for larger blocks
  • undo the last accept or ignore action with the Undo button or Ctrl/Cmd+Z, until it is saved
  • remember the last five right-hand files and show them first in the right-file selector
  • edit the right-hand file directly and save changes in one step
  • create change proposals as timestamped copies and later apply them to the original
  • display the interface automatically in German or English
  • work entirely locally within the Obsidian vault

Quick start

The comparison icon in the left ribbon and Compare with another file in the active document's menu lead to the same view as the command palette:

Side-by-Side Diff file menu

Selecting two files in the file explorer and choosing Compare files from the context menu opens the comparison directly with both files:

Comparing two files selected in the file explorer

  1. Open the command palette and select Compare current file with another file or Compare two files.
  2. Select the second file if it has not been chosen yet.
  3. Review the synchronized view. Use → to stage a change as a proposal, or × to ignore the left-hand diff.
  4. Navigate between changes with the toolbar or Alt+ArrowDown / Alt+ArrowUp; accept or ignore the highlighted change with Alt+ArrowRight / Alt+ArrowLeft.
  5. Save all staged changes with Save changes or Ctrl/Cmd + S.

Three workflows

Compare

The left and right files are displayed in sync. Line changes and differences within a line are highlighted. Use Swap to switch the files and their direction. If changes are pending, the plugin asks whether to save or discard them first.

Contiguous changed lines, as well as changes separated only by blank lines, are grouped into one block; a block with more than three changed lines gets Accept all / Ignore all controls to resolve it in one step. Undo (button or Ctrl/Cmd+Z) reverts the last accept or ignore action, single row or whole block, until it is saved.

Suggest changes

Suggest changes creates a copy next to the active document with a suffix and timestamp, for example Document_changes_20260817-143000.md. If a matching copy already exists, the latest one is opened. The original appears on the left and the editable proposal copy on the right.

Accept changes

Accept changes appears in the document menu only when a matching change copy exists. The view is reversed so that the copy appears on the left and the original on the right. Use → to selectively apply reviewed proposals to the original. After all proposals are accepted and saved, the plugin asks whether the suffix copy should be moved to the trash; canceling keeps the copy available.

Edit and save

In normal diff mode, use Edit mode to make the right-hand side editable. The left-hand file remains read-only. If comparison changes are pending, the plugin asks whether to save or discard them before entering edit mode. Multi-line selection, deletion, Backspace, and Enter for new lines are supported.

Changes are never written automatically while typing or clicking a diff action. The file is updated only after using Save changes or Ctrl/Cmd + S. Before saving, the plugin checks for external file changes and cancels instead of overwriting newer content. Closing a view with unsaved changes opens a confirmation dialog.

Installation

The plugin requires Obsidian 1.6.6 or later.

Use the Add to Obsidian button above to open the Side-by-Side Diff community plugin page. To install the plugin, search for Side-by-Side Diff under Settings → Community plugins → Browse in Obsidian.

For a manual installation, copy the plugin folder to .obsidian/plugins/side-by-side-diff/, then open Settings → Community plugins and enable Side-by-Side Diff. The release folder must contain the generated main.js, manifest.json, styles.css, and locales/ directory.

The plugin is currently marked as desktop-only because mobile support has not been tested yet.

Set the interface language under Settings → Side-by-Side Diff → Language to Automatic, Deutsch, or English. In automatic mode, the Obsidian language is used when supported; unsupported languages fall back to English. The About section at the top links to the developer website, the GitHub repository for stars, and the issue page for feedback.

Feedback and support

  • Report a bug or request a feature
  • View the latest release
  • Read the changelog
  • Visit the developer website

If Side-by-Side Diff is useful to you, a GitHub star is much appreciated.

Privacy and permissions

Side-by-Side Diff runs entirely inside the current Obsidian vault.

  • It makes no network requests and uses no telemetry, analytics, ads, or external services.
  • It does not require an account or payment.
  • It enumerates vault file metadata (paths and names) to populate the file selectors and context actions.
  • It reads and writes file contents only after an explicit user action, plus its own plugin settings.
  • It does not access files outside the vault.

The source repository contains TypeScript; main.js is generated locally and attached to releases.

Releases

Release tags must exactly match the version in manifest.json and use the x.y.z format. Pushing such a tag automatically creates a GitHub release with generated notes and uploads main.js, manifest.json, and styles.css. The release workflow also creates GitHub artifact attestations for these three assets.

Documentation

  • Features and requirements – authoritative overview of the current scope and requirements
  • Concept: Review status display – concept for clearer accepted, ignored, and open change states
  • Contributing – development workflow, tests, and change checklist

Development

Install the local development dependencies once, then use the following commands from this directory:

npm install
npm run dev       # development bundle with inline source maps
npm run build     # strict typecheck and production bundle
npm run validate:manifest
npm run lint      # strict ESLint checks
npm test          # TypeScript unit tests

TypeScript source lives in src/; main.js is the generated Obsidian entry point and is ignored by Git. Rebuild it before installing the plugin in a vault.

Tests

The deterministic diff, synchronization rules, and translation tables are tested in TypeScript:

npm test

Run the command from this plugin directory. See CONTRIBUTING.md for additional development guidance.

HealthExcellent
ReviewPassed
About
Compare two text files side-by-side with synchronized scrolling and inline highlights of line and intra-line differences. Stage or ignore individual changes, edit the right-hand file or create timestamped proposal copies, and save to apply selected edits to your vault while keeping changes visible until saved.
FilesEditingReview
Details
Current version
0.6.1
Last updated
6 days ago
Created
Last month
Updates
8 releases
Downloads
743
Compatible with
Obsidian 1.6.6+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
Nico BlumNico Blumnblum
GitHubnblum
  1. Community
  2. Plugins
  3. Files
  4. Side-by-Side Diff

Related plugins

Thino

Quickly capture memos and display them in the sidebar with a heatmap. (Closed source)

Gemini Scribe

Allows you to interact with Gemini and use your notes as context.

Remember cursor position

Remember cursor and scroll position for each note.

Code Space

Professional code file management with visual dashboard, syntax highlighting editor, Markdown embedding, external folder mounts, and terminal integration.

Note Refactor

Extract note content into new notes and split notes.

AI Agent

Lend your vault to an AI agent. It can read, write, and search your notes.

Notebook Navigator

A better file browser and calendar inspired by Apple Notes, Bear, Evernote and Day One.

LanguageTool Integration

Advanced grammar and spell checking, powered by LanguageTool.

Claudian

Embeds Claude Code/Codex and other local Agents as AI collaborators in your vault.

Advanced URI

Control everything with URI.