Diffdown is a real-time collaborative Markdown editor/previewer built on the AT Protocol diffdown.com

Diffdown#

Collaborative Markdown editor with real-time preview, version history, and multi-file repository support.

Running locally#

# Set env vars (or use defaults for dev)
export DIFFDOWN_SESSION_SECRET="your-secret-here"
export BASE_URL="http://127.0.0.1:8080"

# Build and run
go build -o diffdown ./cmd/server
./diffdown

Server starts on :8080.

Note on CodeMirror#

The editor template references CodeMirror 6 modules at /static/vendor/codemirror.js and /static/vendor/codemirror-lang-markdown.js. You'll need to bundle these yourself (or use a CDN). A quick way:

npm init -y
npm install @codemirror/state @codemirror/view @codemirror/lang-markdown codemirror
npx esbuild --bundle --format=esm --outfile=static/vendor/codemirror.js node_modules/codemirror/dist/index.js
npx esbuild --bundle --format=esm --outfile=static/vendor/codemirror-lang-markdown.js node_modules/@codemirror/lang-markdown/dist/index.js