collabmd 0.1.26 → 0.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -6
- package/dist/client/assets/{index-GE56R5t4.js → index-D4FS-o13.js} +2 -2
- package/dist/client/assets/{index-C95nV7Tl.css → index-DRgeOr4A.css} +1 -1
- package/dist/client/assets/{main-AejRWvom.js → main-Q1xvhoqP.js} +1 -1
- package/dist/client/index.html +2 -2
- package/package.json +1 -1
- package/src/client/presentation/drawio-embed-controller.js +190 -31
- package/src/client/styles/features/diagram-preview.css +66 -9
- package/src/client/styles/layout/responsive.css +9 -0
package/README.md
CHANGED
|
@@ -18,7 +18,7 @@ Throughout this guide, **vault** simply means a regular folder on your computer
|
|
|
18
18
|
- Your filesystem stays the source of truth: CollabMD does not move, rename, or delete files unless you explicitly do that in the app
|
|
19
19
|
- Realtime editing with Yjs
|
|
20
20
|
- External filesystem edits sync back into the app and connected browsers
|
|
21
|
-
- Mermaid, PlantUML, and
|
|
21
|
+
- Mermaid, PlantUML, Excalidraw, and draw.io support
|
|
22
22
|
- Source-anchored comments, chat, and presence
|
|
23
23
|
- Works with plain folders, Obsidian-style vaults, and git-backed docs
|
|
24
24
|
|
|
@@ -65,7 +65,7 @@ Prefer video? [Open the WebM demo](https://raw.githubusercontent.com/andes90/col
|
|
|
65
65
|
- **Markdown with context** — live preview, wiki-links, backlinks, outline, quick switcher, and scroll sync
|
|
66
66
|
- **Source-anchored comments** — comment on lines or selected text with inline markers, preview bubbles, and thread cards
|
|
67
67
|
- **Collaboration built in** — collaborator presence, follow mode, and team chat
|
|
68
|
-
- **Diagram-friendly** — Mermaid fences and standalone `.mmd` / `.mermaid`, PlantUML `.puml` / `.plantuml`, `.excalidraw`, and public video embeds in Markdown
|
|
68
|
+
- **Diagram-friendly** — Mermaid fences and standalone `.mmd` / `.mermaid`, PlantUML `.puml` / `.plantuml`, `.excalidraw`, `.drawio`, and public video embeds in Markdown
|
|
69
69
|
- **Easy browser access** — optional Cloudflare Tunnel support makes a running session easy to share
|
|
70
70
|
|
|
71
71
|
## Best fit for
|
|
@@ -160,7 +160,7 @@ Then share the printed URL and password with your collaborator. If `cloudflared`
|
|
|
160
160
|
|
|
161
161
|
- Single-instance deployment only: collaboration room state is kept in-process and is not shared across replicas
|
|
162
162
|
- `oidc` currently supports Google only
|
|
163
|
-
- Source-anchored comments currently support markdown, Mermaid, and PlantUML text files, but not `.excalidraw`
|
|
163
|
+
- Source-anchored comments currently support markdown, Mermaid, and PlantUML text files, but not `.excalidraw` or `.drawio`
|
|
164
164
|
- Windows use is supported via WSL2 rather than native Windows execution
|
|
165
165
|
|
|
166
166
|
## How it works
|
|
@@ -171,16 +171,20 @@ collabmd ~/my-vault --no-tunnel
|
|
|
171
171
|
|
|
172
172
|
CollabMD starts a local server, scans the vault, and opens a browser-based editor with:
|
|
173
173
|
|
|
174
|
-
- **File explorer sidebar** — browse, create, rename, and delete `.md`, `.mmd`, `.mermaid`, `.puml`, `.plantuml`, and `.
|
|
174
|
+
- **File explorer sidebar** — browse, create, rename, and delete `.md`, `.mmd`, `.mermaid`, `.puml`, `.plantuml`, `.excalidraw`, and `.drawio` files plus folders
|
|
175
175
|
- **Live preview** — rendered as you type, with syntax-highlighted code blocks, public video embeds, plus Mermaid and PlantUML diagrams
|
|
176
176
|
- **Anchored comments** — add comments from the editor, open threads from inline markers or preview bubbles, and review them from the comments drawer
|
|
177
177
|
- **`[[wiki-links]]` + backlinks** — jump between notes and inspect linked mentions
|
|
178
178
|
- **Room chat** — discuss changes without leaving the workspace
|
|
179
179
|
- **Presence + follow mode** — see who is online and follow another collaborator's active cursor
|
|
180
180
|
- **Quick switcher + outline** — move around large vaults and long documents faster
|
|
181
|
-
- **Standalone diagram files** — open `.mmd` / `.mermaid` or `.puml` / `.plantuml` files in side-by-side editor + preview,
|
|
181
|
+
- **Standalone diagram files** — open `.mmd` / `.mermaid` or `.puml` / `.plantuml` files in side-by-side editor + preview, `.excalidraw` files in direct preview mode, and `.drawio` files in an embedded diagrams.net editor/viewer
|
|
182
182
|
|
|
183
|
-
Comment threads are source-anchored and currently supported for markdown, Mermaid, and PlantUML text files. You can comment on a whole line or a text selection, then reopen the thread from either the editor marker or the preview bubble. Excalidraw files are currently excluded from comments.
|
|
183
|
+
Comment threads are source-anchored and currently supported for markdown, Mermaid, and PlantUML text files. You can comment on a whole line or a text selection, then reopen the thread from either the editor marker or the preview bubble. Excalidraw and draw.io files are currently excluded from comments.
|
|
184
|
+
|
|
185
|
+
Draw.io files use the diagrams.net embed/runtime. Opening a `.drawio` file directly mounts an interactive editor in the preview pane. Markdown embeds such as `![[architecture.drawio]]` use the diagrams.net viewer for a lighter inline preview and include an `Open` action to jump into the full file view.
|
|
186
|
+
|
|
187
|
+
Draw.io collaboration is intentionally conservative in this release: one connected client holds the edit lease for a `.drawio` file, while other viewers open it read-only and refresh after saves land. This avoids silent overwrite races without claiming true realtime canvas co-editing.
|
|
184
188
|
|
|
185
189
|
Markdown video embeds are opt-in and use standard image syntax such as `` or ``. The preview currently supports public YouTube URLs plus direct public `https` video files ending in `.mp4`, `.webm`, or `.ogg`. The editor toolbar also includes a `Video` action that inserts the same Markdown syntax for you.
|
|
186
190
|
|
|
@@ -298,6 +302,22 @@ Notes:
|
|
|
298
302
|
- You can restrict sign-in to exact users with `AUTH_OIDC_ALLOWED_EMAILS` or entire domains with `AUTH_OIDC_ALLOWED_DOMAINS`
|
|
299
303
|
- The CLI disables the tunnel automatically when `--auth oidc` is active
|
|
300
304
|
|
|
305
|
+
### Draw.io setup
|
|
306
|
+
|
|
307
|
+
CollabMD uses diagrams.net for `.drawio` rendering and editing. By default it points at the hosted embed runtime:
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
COLLABMD_DRAWIO_BASE_URL=https://embed.diagrams.net
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
You can also point it at a self-hosted diagrams.net deployment:
|
|
314
|
+
|
|
315
|
+
```bash
|
|
316
|
+
COLLABMD_DRAWIO_BASE_URL=https://drawio.example.com
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
If the draw.io runtime is unavailable, direct `.drawio` file opens fall back to plain XML editing instead of leaving the file inaccessible.
|
|
320
|
+
|
|
301
321
|
You can also configure the tunnel via environment variables:
|
|
302
322
|
|
|
303
323
|
```bash
|
|
@@ -579,6 +599,7 @@ vite.config.mjs Vite multi-page build and dev-server proxy config
|
|
|
579
599
|
| `AUTH_OIDC_ALLOWED_DOMAINS` | Comma-separated email domain allowlist for `AUTH_STRATEGY=oidc` | |
|
|
580
600
|
| `BASE_PATH` | URL path prefix for subpath deployments | |
|
|
581
601
|
| `PLANTUML_SERVER_URL` | Upstream PlantUML server base URL used for server-side SVG rendering | `https://www.plantuml.com/plantuml` |
|
|
602
|
+
| `COLLABMD_DRAWIO_BASE_URL` | diagrams.net base URL used for `.drawio` viewing and editing | `https://embed.diagrams.net` |
|
|
582
603
|
| `COLLABMD_VAULT_DIR` | Vault directory path | CLI: current directory, server entrypoint: `data/vault`, Docker: `/data` |
|
|
583
604
|
| `COLLABMD_GIT_ENABLED` | Enable or disable git integration in the UI and API | `true` |
|
|
584
605
|
| `COLLABMD_GIT_REPO_URL` | Remote git repository used to bootstrap the vault checkout | |
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./main-
|
|
2
|
-
import{t as e}from"./runtime-config-loader-DwWsKc1-.js";import{t}from"./preload-helper-I1wKxk_B.js";var n=``+new URL(`github-dark.min-Z5exjX_n.css`,import.meta.url).href,r=``+new URL(`github.min-D2BCvnWf.css`,import.meta.url).href;function i(){let e=document.getElementById(`hljs-theme`);e instanceof HTMLLinkElement||(e=document.createElement(`link`),e.id=`hljs-theme`,e.rel=`stylesheet`,document.head.append(e)),e.href=n,e.dataset.darkHref=n,e.dataset.lightHref=r}await e(),i(),await t(()=>import(`./main-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./main-Q1xvhoqP.js","./preload-helper-I1wKxk_B.js","./preview-render-profile-DQsam_Ol.js","./chunk-D-fkvfCP.js","./yjs-provider-reset-guard-Cj00kgyM.js","./room-DyhEnogt.js","./vault-utils-BM4i-Ofm.js","./vault-api-client-fFJfUVXM.js","./drawio-room-D6352KkV.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./runtime-config-loader-DwWsKc1-.js";import{t}from"./preload-helper-I1wKxk_B.js";var n=``+new URL(`github-dark.min-Z5exjX_n.css`,import.meta.url).href,r=``+new URL(`github.min-D2BCvnWf.css`,import.meta.url).href;function i(){let e=document.getElementById(`hljs-theme`);e instanceof HTMLLinkElement||(e=document.createElement(`link`),e.id=`hljs-theme`,e.rel=`stylesheet`,document.head.append(e)),e.href=n,e.dataset.darkHref=n,e.dataset.lightHref=r}await e(),i(),await t(()=>import(`./main-Q1xvhoqP.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8]),import.meta.url);
|