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

Source Code Note

waiting0324waiting03243k downloads

Organize source code note easily.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

中文文檔

Technical Support AntV X6

Functionality

  • Parse the code blocks in Obsidian notes, draw the graphs of the method call links, and keep the code blocks in the canvas for easy viewing Demo

How to use

1. In the code comments section of Markdown's code block, write the relevant information with the keyword

Supported keywords Effect
@class Name of the class corresponding to the method
@function Method Name
@call Call the related method, multiple methods are supported. Format: class name @ method name

Example

/** 
 * Register metadata string.
 * 
 * @class ShenyuClientHttpRegistryController
 * @function registerMetadata(@RequestBody final MetaDataRegisterDTO metaDataRegisterDTO)
 * @call RegisterClientServerDisruptorPublisher @ publish(final DataTypeParent data)
 * 
 * @param metaDataRegisterDTO the meta data register dto  
 * @return the string  
 */
@PostMapping("/register-metadata")  
@ResponseBody  
public String registerMetadata(@RequestBody final MetaDataRegisterDTO metaDataRegisterDTO) {  
    // 通过 Publisher 注册 元数据对象  
    publisher.publish(metaDataRegisterDTO);  
    return ShenyuResultMessage.SUCCESS;  
}
/** 
 * Register metadata string. 
 * 
 * @class RegisterClientServerDisruptorPublisher
 * @function publish(final DataTypeParent data)
 * 
 * @param metaDataRegisterDTO the meta data register dto  
 * @return the string  
 */
@Override  
public void publish(final DataTypeParent data) {  
    // 获取 DisruptorProvider 
    DisruptorProvider<Collection<DataTypeParent>> provider = providerManage.getProvider();  
    // 调用 DisruptorProvider 的 onData 方法,发送数据  
    provider.onData(Collections.singleton(data));  
}

2. Click the button to the left of Obsidian to open the canvas

HealthFair
ReviewCaution
About
Parse code blocks in notes to build visual graphs of method-call relationships and pin the source snippets on a canvas for quick inspection. Recognize @class, @function and @call tags in code comments to map links between methods and render them as connected nodes.
CodeVisualization
Details
Current version
1.0.0
Last updated
3 years ago
Created
3 years ago
Updates
1 release
Downloads
3k
Compatible with
Obsidian 1.0.0+
Platforms
Desktop, Mobile
License
GPL-3.0
Report bugRequest featureReport plugin
Author
waiting0324waiting0324
github.com/waiting0324
GitHubwaiting0324
  1. Community
  2. Plugins
  3. Code
  4. Source Code Note

Related plugins

Mermaid Tools

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

Kroki

Render Kroki diagrams.

Excalidraw

Visual PKM powerhouse. Create and edit Excalidraw drawings.

Breadcrumbs

Visualise the hierarchy of your vault using a breadcrumb trail or matrix view.

Advanced Canvas

Supercharge your canvas experience. Create presentations, flowcharts and more.

Maps

Adds a map layout to bases so you can display notes as an interactive map view.

ExcaliBrain

An interactive, structured mind-map of your Obsidian vault.

PlantUML

Generate PlantUML diagrams.

Persistent Graph

Save and restore the positions of nodes on your graph.

Strange New Worlds

Reveal networked thought and the strange new worlds created by your vault.