A SiYuan plugin for freehand drawing, based on js-draw.
  • TypeScript 60.3%
  • JavaScript 31.8%
  • Svelte 4.6%
  • CSS 1.4%
  • HTML 1.3%
  • Other 0.6%
Find a file
MassiveBox ca22076282
All checks were successful
Build on Push and create Release on Tag / build (push) Successful in 1m25s
fix: Forgejo URL fails new SiYuan Bazaar validation
I sure do love undocumented changes
2026-05-17 18:28:31 +02:00
.forgejo/workflows Add CI 2025-05-08 22:47:09 +02:00
asset Resize demo 2025-08-07 18:58:00 +02:00
public feat(shortcut): improve position tracking and error handling 2026-05-14 11:30:53 +02:00
scripts Add CI 2025-05-08 22:47:09 +02:00
src refactor(editor): move open editors management to EditorManager 2026-05-14 16:11:22 +02:00
.gitignore 为checkout添加切换状态时添加回调函数 2024-04-05 16:37:25 +08:00
CHANGELOG.md 📝docs 2024-06-01 16:35:02 +08:00
icon.png Initial Upload 2025-03-31 19:14:17 +02:00
LICENSE Initial commit 2023-05-19 19:40:28 +08:00
package.json fix: Forgejo URL fails new SiYuan Bazaar validation 2026-05-17 18:28:31 +02:00
plugin.json fix: Forgejo URL fails new SiYuan Bazaar validation 2026-05-17 18:28:31 +02:00
preview.png Initial Upload 2025-03-31 19:14:17 +02:00
README-zh_CN.md docs: update usage instructions and unsaved changes policy 2026-05-07 16:49:00 +02:00
README.md docs: update usage instructions and unsaved changes policy 2026-05-07 16:49:00 +02:00
svelte.config.js 🔧 config svelte 2024-04-19 19:09:15 +08:00
tsconfig.json Auto-refresh images on edit 2025-04-03 15:51:33 +02:00
tsconfig.node.json init 2023-05-19 19:50:46 +08:00
vite.config.ts 🔧 ci: update vite script, auto remove trivial files under dist/ 2024-10-24 14:51:01 +08:00
vite.config.ts.timestamp-1743541342564-d66840ad6dd8b.mjs Offer to edit images 2025-04-01 23:03:22 +02:00
yaml-plugin.js 🔧 build: yaml-plugin 2024-04-05 22:54:18 +08:00

SiYuan js-draw Plugin

This plugin allows you to embed js-draw whiteboards anywhere in your SiYuan documents.

▶️ LiuYun thread

Usage instructions

Demo

Install the plugin from the marketplace by searching for js-draw.

Creating a whiteboard

There are two ways to create a new whiteboard:

  • Slash command — type /Insert whiteboard in your document and select the menu entry.
  • Keyboard shortcut / toolbar icon — press Alt+Shift+D or click the toolbar icon without selecting anything. A new whiteboard will be inserted at your cursor position.

The editor will open in a new tab (or dialog on mobile). Draw what you like, then click Save and close the editor.

Editing a whiteboard

Select an existing whiteboard by left-clicking it, then open the editor in one of these ways:

  • Press Alt+Shift+D or click the toolbar icon.
  • Right-click the whiteboard (or tap the three dots on mobile) and choose Plugin → Edit whiteboard.

Unsaved changes

If you close the editor without saving, your changes are automatically preserved and you'll be given the option to keep or roll back to the previous version.

Unsaved drawings are also automatically saved when the app exits. Note: this emergency save happens after SiYuan's final sync, so it may cause sync conflicts if you use SiYuan across multiple devices. Make a habit of saving manually before closing.

Planned features

Check out the Projects tab!

Contributing

Contributions are always welcome!
The Chinese translation is made by Kimi AI, and I'm unable to verify it because I don't speak Chinese. If you do and find issues, please let me know.
Please open an issue or contact me if you'd like to help!

Thanks to

This project couldn't have been possible without (in no particular order):

Make sure you check them out and support them as well!

License

The original plugin framework is developed by SiYuan 思源笔记 and licensed under the MIT license.
All changes made by me are copyright MassiveBox 2025, and licensed under the MIT license.