Projects

Zhijian

Avalonia + AtomUI で構築した Markdown-first マインドマップエディター

使用説明

Zhijian

Zhijian

Zhijian は C#、Avalonia、AtomUI で作られたローカル向け Markdown-first マインドマップエディターです。アウトライン、Markdown、グラフィカルなマインドマップを同じツリーモデルで同期し、記事の構成、機能設計、Markdown ベースのマインドマップ文書を扱いやすくします。

リポジトリ:https://github.com/dotnet9/Zhijian

Zhijian main window

このページのスクリーンショットと GIF は、実際に起動した Zhijian デスクトップアプリを操作して取得したものです。

主な機能

  • 起動時は空のマインドマップで、編集可能な中心トピックだけを表示します。
  • File メニューは New、New Window、Open、Open Folder、Recent Files、Save、Save As、Open File Location、Close を提供します。
  • Edit メニューは Undo、Redo、構造変更、ノード削除、Copy as Markdown を提供します。
  • Theme、Language、Help、About はタイトルバーのメニューにまとめ、主要操作にはアイコンとショートカットを表示します。
  • 言語切り替えは Lang.Avalonia.Json を使い、簡体字中国語、繁体字中国語、英語、日本語を提供します。
  • 初回起動時は AtomUI Tour で主要操作を案内します。
  • フォルダーを開くと、左側で FilesOutline タブを切り替えられます。
  • アウトライン、Markdown、マインドマップは同じ MindMapNode を共有します。
  • アウトラインとマインドマップのメニューは、兄弟追加、子追加、昇格、降格、上下移動、ノート、削除を提供します。
  • CodeWF.MindView は Avalonia のみへ依存し、他の Avalonia アプリから再利用できます。

実行プレビュー

File menu

Title-bar menus

First-run onboarding

Theme and language switching

Copy Markdown feedback

Open folder workflow

Node menus

Note synchronization

Mini-map navigation

Zoom

Canvas panning

About menu

CodeWF.MindView の再利用

新しい Avalonia アプリでは CodeWF.MindViewCodeWF.MindView.Themes を参照し、App.axaml<mindThemes:MindViewThemes /> を登録してから、ビューに MindMapEditor を配置できます。

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

ホスト ViewModel は ObservableCollection<MindMapNode> を提供し、IMindMapEditorController を実装して、階層判定、作成、削除、昇格、降格、ドラッグ移動を処理します。ファイルの open/save、recent files、未保存確認は IMindMapFileServicesrc/Zhijian の実装を参考にできます。

Open Source Thanks

Quick Start

dotnet restore Zhijian.slnx
dotnet build Zhijian.slnx
dotnet run --project src/Zhijian/Zhijian.csproj

Repository