MarkdownObserver
A native macOS Markdown reader.
Preview Markdown files, watch folders for changes, and see diffs — useful when AI agents write Markdown you need to review, or when you want a live preview alongside your editor.
Works well with AI agents.
Point MarkdownObserver at your project folder. When Claude Code, Cursor, or any other tool writes a Markdown file, the rendered preview updates automatically. Change tracking shows you exactly what was added or modified — no manual refresh, no switching windows.
See it in action
What it does
Built with SwiftUI.
Markdown Rendering
Renders Markdown in a WKWebView with syntax highlighting. Supports fenced code blocks, task lists, footnotes, definition lists, and custom attributes. Theme changes inject CSS without reloading.
File & Folder Watching
Point it at a folder and every Markdown file is tracked. When an AI agent — Claude Code, Cursor, Copilot — writes or updates a .md file, the change is picked up within seconds. kqueue with polling fallback, handles rename-over-write.
Change Tracking
Line-level LCS diff via the Differ library with token-level inline comparison. Gutter markers for added, edited, and deleted regions. Expandable before/after panels.
12 Syntax Themes
Monokai, GitHub, Dracula, Nord, Gruvbox, Solarized, One Light/Dark, Xcode, and more. Four reader themes. Font size 10–48 pt, adjustable with ⌘+/⌘−.
Source View
CodeMirror-powered read-only source view with syntax highlighting. Inline editing with live preview (5 ms debounce). Bidirectional scroll sync between panes.
Multi-Document Workspace
Sidebar with five sort modes, batch operations, context menus. Open in default app, reveal in Finder. Folder watch sessions shared across all documents in a window.
Screenshots
Dark theme with syntax highlighting
Change tracking with gutter markers
Settings: themes, typography, notifications
Folder watch configuration
Alternative syntax theme
Open source, MIT licensed.
Built with Swift and SwiftUI.
Rendering runs entirely local — no network calls, no telemetry.