CodeWF.MindView 12.1.0.9

Suggested Alternatives

CodeWF.Avalonia.MindView

dotnet add package CodeWF.MindView --version 12.1.0.9
                    
NuGet\Install-Package CodeWF.MindView -Version 12.1.0.9
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CodeWF.MindView" Version="12.1.0.9" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CodeWF.MindView" Version="12.1.0.9" />
                    
Directory.Packages.props
<PackageReference Include="CodeWF.MindView" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CodeWF.MindView --version 12.1.0.9
                    
#r "nuget: CodeWF.MindView, 12.1.0.9"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CodeWF.MindView@12.1.0.9
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CodeWF.MindView&version=12.1.0.9
                    
Install as a Cake Addin
#tool nuget:?package=CodeWF.MindView&version=12.1.0.9
                    
Install as a Cake Tool

枝见 Zhijian

枝见是一个基于 C# 和 Avalonia 的本地 Markdown-first 脑图编辑器。它把大纲、Markdown 文本和图形脑图绑定到同一份文档模型上,适合写文章提纲、梳理功能设计和整理项目结构。

仓库地址:https://github.com/dotnet9/Zhijian

枝见主窗口

仓库规范

  • 当前版本:12.1.0.8,版本号统一维护在根目录 Directory.Build.props 的 <Version> 节点。
  • NuGet 包项目统一支持 net8.0;net10.0;Demo、App、测试与内部应用项目统一使用 net11.0 / net11.0-windows。
  • 根目录 logo.svg、logo.png、logo.ico 是唯一图标源,子工程只通过 MSBuild Link 引用,不维护图标副本。
  • 运行时帮助、Markdown 示例、内置备忘录、设计说明等业务文档按功能保留;仓库级入口文档使用根目录 README.md 和 UpdateLog.md。

功能亮点

  • 启动后默认创建空白脑图,随程序输出的 使用手册.md 可从“帮助 → 打开使用手册”手动载入,用作多层级示例和帮助手册。
  • 空白脑图提供“产品方案 / 会议纪要 / 学习笔记”快速模板,也可从“文件 → 从模板新建”进入,降低首次起步成本。
  • 文件菜单支持新建、新建窗口、打开可编辑文件、导入、打开文件夹、最近文件、保存、另存为可编辑格式、打开文件位置和关闭。
  • 编辑菜单支持撤销、重做、添加同级、添加子级、提升、降级、上移、下移、删除节点和复制为 Markdown。
  • 主题、语言、帮助和关于菜单集中在标题栏,常用项带有图标和快捷键。
  • 语言切换使用 Lang.Avalonia.Json 资源,覆盖中文简体、中文繁体、英语和日语。
  • 首次启动新手引导会精准高亮标题栏文件菜单、大纲编辑区、Markdown 切换、脑图画布和底部导航,并提供“跳过”按钮。
  • src/Zhijian/App.config 集中管理新手引导、默认语言、最近文件数、历史步数和运行状态文件名。
  • 左侧提供“文件 / 大纲”两个 Tab:空文件页可直接打开可编辑文件、导入、打开文件夹或打开使用手册;单独打开或导入的文件会出现在文件列表中;打开文件夹时会列出该目录下所有支持文件。
  • 大纲、Markdown 和脑图视图共享同一棵 MindMapNode 树。
  • 大纲和脑图都支持标题、备注内联编辑。
  • 大纲和脑图菜单提供添加同级、添加子级、提升、降级、上移、下移、备注和删除等高频操作。
  • 脑图支持拖拽中心主题或画布平移、缩放、回到中心主题,以及基于真实节点坐标的小图导航。
  • 复制为 Markdown 会把当前文档 Markdown 写入剪贴板,并显示桌面全局消息。
  • “打开/另存为”聚焦 Markdown、OPML、XMind 等可编辑格式;“导入”覆盖更多只读转换格式,避免误以为能原格式保存。
  • 应用外壳提供标题栏菜单、对话框、列表控件、ToolTip、全局消息和深色主题。
  • 可复用的 CodeWF.MindView 控件只依赖 Avalonia,并与桌面应用外壳解耦。

运行预览

下面的截图和 GIF 已按当前界面重新制作,并使用随程序输出的使用手册,便于观察文件列表、小图、缩放和画布拖拽效果。

文件菜单

标题栏菜单

新手引导

主题和语言切换

复制 Markdown 提示

文件列表流程

节点菜单

创建节点

大纲菜单

备注同步

脑图节点工具条

脑图拖拽调整层级

小图导航

小图概览

缩放

画布拖拽

编辑流程

左侧是主要输入区。使用大纲模式快速组织层级;需要纯文本维护时切换到 Markdown;右侧脑图会从同一份数据实时刷新。

节点标题编辑时常用快捷键:

  • Enter:添加同级节点。在中心主题上按 Enter 会添加子节点。
  • Tab:将当前节点降级为上一个同级节点的子节点。
  • Shift + Tab:提升节点。
  • Alt + Up / Alt + Down:在同级节点中上移或下移。
  • Delete 或 Backspace:删除空的非根节点。
  • 触控板双指捏合:围绕指针位置缩放脑图。
  • 触控板双指滑动 或 鼠标滚轮:平移脑图画布。
  • ⌘ + 鼠标滚轮(macOS)或 Ctrl + 鼠标滚轮(Windows/Linux):围绕指针位置缩放脑图。
  • Shift + 鼠标滚轮:横向平移脑图画布。
  • 拖拽中心主题、Space + 左键拖拽 或 鼠标中键拖拽:拖拽脑图画布。
  • ⌘ + L(macOS)或 Ctrl + L(Windows/Linux):回到中心主题。

文件格式

枝见默认使用可读 Markdown 保存。为避免数据丢失,另存为只提供稳定可写的可编辑格式:

  • Markdown (.md, .markdown)
  • OPML (.opml)
  • XMind (.xmind)

其他脑图、draw.io、图片、Office、文档和数据文件可通过“导入...”转换成脑图后,再另存为上述可编辑格式。

复用 CodeWF.MindView

src/CodeWF.MindView 独立于应用外壳。新的 Avalonia 应用可以引用 CodeWF.MindView 和 CodeWF.MindView.Themes,在 App.axaml 注册 <mindThemes:MindViewThemes />,然后在页面中使用 MindMapEditor。普通接入只需要绑定节点集合和当前选择:

<mind:MindMapEditor
    Roots="{Binding Roots}"
    SelectedNode="{Binding SelectedNode, Mode=TwoWay}" />

MindMapEditor 内置添加子级、添加同级、升降级、同级上下移动、删除、拖拽移动和自动布局。需要接入撤销历史、保存状态或业务规则时,再把 Controller="{Binding}" 指向实现 IMindMapEditorController 的宿主 ViewModel。src/Zhijian 是围绕可复用控件构建文件工作流、大纲编辑、Markdown 同步和桌面外壳的完整参考。

更完整的接入说明见 docs/源码设计.md。

项目结构

Zhijian/
|-- src/CodeWF.MindView/        可复用脑图控件和文档编解码
|-- src/CodeWF.MindView.Themes/ CodeWF.MindView 默认资源
|-- src/Zhijian/                枝见桌面应用
|-- docs/                       架构和源码设计文档
|-- docs/media/                 文档截图和 GIF
|-- UpdateLog.md                更新日志
`-- Zhijian.slnx                解决方案文件

开源项目感谢

枝见的开发离不开这些优秀开源平台和项目:

开发

环境要求:

  • .NET 11 SDK

常用命令:

dotnet restore Zhijian.slnx
dotnet build Zhijian.slnx
dotnet run --project src/Zhijian/Zhijian.csproj -f net11.0
.\publish.bat
.\package_all.bat
.\package_all.bat --force

package_all.bat 会先调用 publish.bat,再在 artifacts/release/ 下生成 Zhijian-v<Version>-<RID>.zip、SHA256 文件和 release manifest。 Release 压缩包会排除调试符号文件和嵌套 zip 文件。 已有产物默认不会覆盖;需要覆盖时使用 package_all.bat --force,或直接给 PowerShell 脚本传入 -Force。

macOS 打包

macOS 给别人分发时建议打成 .app + .dmg,不要只发送 dotnet publish 输出目录。脚本会默认生成 Intel 和 Apple Silicon 两个安装镜像:

./package_macos.sh

只打 Apple Silicon:

./package_macos.sh osx-arm64

产物会输出到 artifacts/macos/。未配置证书时脚本会使用 ad-hoc 签名,适合本机测试;真正发给其他 macOS 用户时,建议使用 Developer ID 证书签名并公证:

CODESIGN_IDENTITY="Developer ID Application: Your Name (TEAMID)" \
NOTARIZE=1 \
NOTARY_KEYCHAIN_PROFILE=zhijian-notary \
./package_macos.sh all

脚本需要 .NET 11 SDK,会自动检查 dotnet 和 $HOME/.dotnet/dotnet。如果 SDK 安装在其他位置,可设置 DOTNET_CMD=/path/to/dotnet。

文档

第三方开源组件审计(2026-05-20)

检查方式:dotnet restore Zhijian.slnx --configfile <local-nuget-config>、dotnet list Zhijian.slnx package --include-transitive、NuGet .nuspec、NuGet.org 与源码仓库信息。优先接受 MIT / Apache-2.0 / BSD;LGPL-3.0 等其它开源协议在源码与传递依赖均可追溯时单独标注。

整改:

  • CodeWF.EventBus pin 到本次修复后的 3.4.5.4。
  • CodeWF.Tools.Core pin 到本次修复后的 1.3.13.1。
  • Tmds.DBus.Protocol 从传递依赖 0.92.0 pin 到 0.93.0。
包 使用范围 协议 源码/项目地址 结论
AtomUI.Desktop.Controls 6.0.0-build.2 桌面控件、菜单、窗口 LGPL-3.0 https://github.com/AtomUI/AtomUI NuGet 包指向公开源码;按“源码与传递依赖可追溯”通过
Avalonia / Avalonia.Desktop / Avalonia.Fonts.Inter 桌面运行时 MIT https://github.com/AvaloniaUI/Avalonia 通过
CodeWF.EventBus / CodeWF.Markdown.Lite.Themes / CodeWF.Tools.Core / Lang.Avalonia.Json 自研组件 MIT https://github.com/dotnet9 自研开源包,通过
ReactiveUI.Avalonia MVVM MIT https://github.com/reactiveui/reactiveui 通过
VC-LTL Windows 兼容 EPL-2.0 https://github.com/Chuyu-Team/VC-LTL5 源码开放,按“非优先但可追溯”通过
YY-Thunks Windows 兼容 MIT https://github.com/Chuyu-Team/YY-Thunks 源码开放,通过
Tmds.DBus.Protocol Avalonia Linux DBus 传递依赖 MIT https://github.com/tmds/Tmds.DBus 通过,pin 到 0.93.0

传递依赖检查结论:AtomUI 链路中的 AtomUI.Controls、AtomUI.Controls.Shared、AtomUI.Core、AtomUI.Fonts.AlibabaSans、AtomUI.Icons.AntDesign、AtomUI.Native 均来自公开源码仓库;Avalonia / SkiaSharp / ANGLE、ReactiveUI / Splat、Svg.Controls.Avalonia / Svg.*、ExCSS、DynamicData、HarfBuzzSharp、MicroCom.Runtime 均有公开源码。有效 restore 未发现 AvaloniaUI.DiagnosticsSupport、Semi.Avalonia.* 黑盒扩展或 System.Drawing.Common 4.7.0。

包版本维护约定

XML 文件统一使用两个空格缩进。Directory.Packages.props 统一承载 NuGet 中央包管理开关和包版本变量,包括 AvaloniaVersion 等共享版本属性;Directory.Build.props 仅保留项目构建、编译选项和 NuGet 元数据。仓库如引用 VC-LTL、YY-Thunks,这两个兼容旧版操作系统的特殊包必须使用最新预览版。

CI/CD:自动发布

推送 v* 标签(如 v12.1.0.4,与 Directory.Build.props 的 <Version> 一致)会同时触发两个工作流:

publish-nuget.yml:发布 CodeWF.MindView、CodeWF.MindView.Themes 到 nuget.org(含 snupkg),认证用 NuGet Trusted Publishing(OIDC,仓库不存 secret),nuget.org 侧 key 绑定本仓库与 publish-nuget.yml。

release.yml:构建桌面安装包并创建 GitHub Release——

  • Windows:NativeAOT 自包含发布 + Inno Setup 简体中文向导 Zhijian-v版本-win-x64-setup.exe
  • Linux:自包含发布 + dpkg-deb 打包 Zhijian-v版本-linux-x64.deb
  • macOS:package_macos.sh 产出 Zhijian-版本-osx-arm64.dmg / osx-x64.dmg(可按需加签名/公证)

手工发布步骤:

# 1. 升版本:修改 Directory.Build.props 的 <Version> 并提交
# 2. 打标签并推送,两个工作流同时触发
git tag -a v12.1.0.5 -m "Zhijian v12.1.0.5"
git push origin v12.1.0.5
# 3. 到 GitHub Actions 观察 publish-nuget 与 release 两个运行
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on CodeWF.MindView:

Package Downloads
CodeWF.MindView.Themes

Default Avalonia resources for CodeWF.MindView mind-map controls.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
12.1.0.9 120 10/4/2026 12.1.0.9 is deprecated because it is no longer maintained.
12.1.0.8 106 10/4/2026
12.1.0.7 100 10/4/2026
12.1.0.6 93 10/4/2026
12.1.0.5 105 10/1/2026
12.1.0.4 97 10/1/2026
12.0.3.6 168 5/18/2026
12.0.3.5 152 5/17/2026