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

Analog Canvas

Todd ZhouTodd Zhou47 downloads

Open Analog Canvas circuit drawings (.icproj) in Obsidian and embed them in your notes.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates2

在 Obsidian 里绘制电路图的插件。电路存成 .icproj 文件,可以在笔记里用嵌入引用:

![[inv.icproj]]          整张图
![[inv.icproj#PFD]]      只显示名为 PFD 的标注区块
![[inv.icproj|200]]      宽 200px,高按原图比例
![[inv.icproj|200x100]]  宽 200px、高 100px
![[inv.icproj#PFD|200]]  区块也能指定尺寸

尺寸写法与 Obsidian 图片一致:|宽度 只定宽、按比例定高;|宽度x高度 固定宽高(拉伸铺满)。

区块候选带有色标(空心方/圆 + 中心圆点),同名区块以 objectID 区分,引用写成 ![[inv.icproj#objectID]]。

嵌入图右上角悬浮栏提供四个按钮:放大、刷新(从文件重新渲染)、编辑区块(就地编辑 ![[...]] 文字)、编辑电路(在新标签页打开编辑器)。文件树右键菜单里还有"新建电路"。

仓库布局

  • src/、scripts/、esbuild.config.mjs — 插件本体(TypeScript)。
  • circuit/ — 电路编辑器的运行时包(构建产物,随插件一起分发)。
  • vendor/icm/ — 构建编辑器包所需的渲染库。
  • analog-canvas-go/、analog-canvas/ — 上游编辑器源码的本地检出,不入库(见 .gitignore)。重新构建编辑器包时需要它们。

仓库自带构建好的 main.js,直接安装即可使用,不必先构建。

安装

社区插件商店:直接安装即可。商店的安装器只装 main.js、manifest.json、styles.css 三个文件,编辑器包会在首次加载时从 GitHub Releases 下载 circuit.zip(约 6 MB,仅此一处网络访问)解压到插件目录;插件升级后首次加载时也会自动换上配套的编辑器包。

手动安装:把这几项复制到库的 .obsidian/plugins/analog-canvas/ 目录:

main.js  styles.css  manifest.json  circuit/

手动放好的 circuit/ 会被原样使用,插件不会下载或覆盖它。

构建

改动编辑器包(circuit/)时:

cd analog-canvas-go
pnpm install
pnpm --filter @icm/editor exec vite build --config vite.obsidian.config.ts
cd ..
npm run vendor:circuit        # 把 dist-obsidian 拷进 circuit/

改动插件本体时:

npm install
npm run build                 # esbuild 编译 src/ → main.js
npm run typecheck             # 可选

发布

版本号写在 manifest.json、package.json、versions.json 三处(versions.json 里是 "版本号": "最低 Obsidian 版本")。提交后打同名的纯版本号 tag(如 0.1.1,不带 v)并推送,GitHub Actions 会构建并创建 Release,附上 main.js、manifest.json、styles.css、circuit.zip。

HealthExcellent
ReviewCaution
About
Draw circuit diagrams inside Obsidian and save them as .icproj files. Embed entire diagrams or specific labeled blocks in notes and reference blocks precisely by objectID. Use the embed's floating toolbar to zoom, refresh, edit blocks in-place, or open the full editor in a new tab; create new circuits from the file tree.
DrawingFiles
Details
Current version
0.1.1
Last updated
3 weeks ago
Created
3 weeks ago
Updates
2 releases
Downloads
47
Compatible with
Obsidian 1.7.2+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
Todd ZhouTodd Zhoutoddz
GitHubtoddzzf
  1. Community
  2. Plugins
  3. Drawing
  4. Analog Canvas

Related plugins

Excalidraw Extras

Companion plugin for Excalidraw high-privilege and large components.

tldraw

Integration with tldraw, allowing users to draw and edit content on a virtual whiteboard.

Notebook Navigator

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

Excalidraw

Visual PKM powerhouse. Create and edit Excalidraw drawings.

Claudian

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

Advanced URI

Control everything with URI.

Mermaid Tools

Improved Mermaid.js experience: visual toolbar with common elements and more.

Thino

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

Local REST API with MCP

Unlock your automation needs by interacting with your notes over a secure REST API.

ChatGPT MD

A seamless integration of ChatGPT, OpenRouter.ai and local LLMs via Ollama into your notes.