Skip to content

ferocknew/mind-map

 
 

Repository files navigation

Simple mind map

npm-version npm download GitHub issues license GitHub stars GitHub forks

中文名:思绪思维导图。一个简单&强大的 Web 思维导图库和思维导图软件。

客户端和插件

  • 思绪思维导图客户端

支持Windows、Mac及Linux系统。下载地址:Github百度网盘夸克网盘

  • Obsidian插件

下载地址:Github

  • UTools插件

已上架uTools插件应用市场,可直接在uTools插件应用市场中搜索思绪进行安装,也可以直接访问该地址:主页,点击右侧的【启动】按钮进行安装

项目介绍

1. simple-mind-map 核心库

一个不依赖任何框架的 JavaScript 思维导图库,可以用来快速完成 Web 思维导图产品的开发。

核心特性:

  • 插件化架构,按需引入,减小打包体积
  • 支持多种布局结构(逻辑结构图、思维导图、组织结构图、目录组织图、时间轴、鱼骨图等)
  • 丰富的主题系统和样式定制
  • 完整的命令模式(支持撤销/重做)
  • 节点复用机制,优化渲染性能

开发文档:https://wanglin2.github.io/mind-map-docs/

2. Web 应用

基于核心库、Vue 2.x 和 ElementUI 开发的 Web 思维导图应用,支持操作电脑本地文件,可以当做一个在线版思维导图应用使用,也可以自部署和二次开发。

主要功能:

  • AI 智能辅助(支持多种 AI 服务)
  • 富文本编辑、数学公式
  • 协同编辑、演示模式
  • 多格式导入导出
  • 本地文件管理

在线地址:https://wanglin2.github.io/mind-map/

3. 云存储版本

如果你需要带后端的云存储版本,可以尝试我们开发的另一个项目理想文档

特性

核心功能

  • 插件化架构:除核心功能外,其他功能作为插件提供,按需使用,减小打包体积
  • 多种布局结构:逻辑结构图(向左、向右)、思维导图、组织结构图、目录组织图、时间轴(横向、竖向)、鱼骨图
  • 主题系统:内置多种主题,允许高度自定义样式,支持注册新主题
  • 丰富节点内容:支持文本(普通文本、富文本)、图片、图标、超链接、备注、标签、概要、数学公式
  • 节点操作:支持拖拽(拖拽移动、自由调整)、多种节点形状、扩展节点内容、使用 DDM 完全自定义节点内容
  • 画布操作:支持画布拖动、缩放
  • 多选节点:支持鼠标按键拖动选择和 Ctrl+左键两种多选节点方式

导入导出

  • 支持导出为 jsonpngsvgpdfmarkdownxmindtxt
  • 支持从 jsonxmindmarkdown 导入

高级功能

  • 快捷键:丰富的键盘快捷键支持
  • 前进后退:历史记录管理
  • 关联线:节点之间的关联关系
  • 搜索替换:快速查找和替换内容
  • 小地图:导航预览
  • 水印:添加水印保护
  • 滚动条:画布滚动导航
  • 手绘风格:手绘风格渲染
  • 彩虹线条:彩色连接线
  • 标记:节点标记功能
  • 外框:节点外框
  • 协同编辑:基于 Yjs 的多人实时协同编辑
  • 演示模式:思维导图演示

AI 功能

  • 多 AI 服务支持:OpenAI、Anthropic Claude、火山引擎等
  • 工具调用:AI 可以直接操作思维导图(添加节点、删除节点、更新内容等)
  • 会话历史:保存和管理 AI 对话历史
  • 全局规则:支持自定义系统提示词
  • 流式响应:实时的 AI 回复体验

官方插件

插件名称 功能描述
RichText 节点富文本编辑(基于 Quill)
Select 鼠标框选多节点
Drag 节点拖拽移动
AssociativeLine 关联线
Export 导出(PNG、SVG、PDF、JSON、Markdown、XMind)
KeyboardNavigation 键盘导航
MiniMap 小地图
Watermark 水印
TouchEvent 移动端触摸事件支持
NodeImgAdjust 拖拽调整节点图片大小
Search 搜索替换
Painter 节点格式刷
Scrollbar 滚动条
Formula 数学公式(基于 KaTeX)
Cooperate 协同编辑(基于 Yjs)
RainbowLines 彩虹线条
Demonstrate 演示模式
OuterFrame 外框
MindMapLayoutPro 思维导图布局增强

不支持的功能

本项目不会实现的特性:

  1. 自由节点,即多个根节点

  2. 概要节点后面继续添加节点

如果你需要以上特性,那么本库可能无法满足你的需求。

快速开始

安装核心库

npm i simple-mind-map

基础使用

提供一个宽高不为 0 的容器元素:

<div id="mindMapContainer"></div>

设置 CSS 样式:

#mindMapContainer * {
  margin: 0;
  padding: 0;
}

创建实例:

import MindMap from "simple-mind-map";

const mindMap = new MindMap({
  el: document.getElementById("mindMapContainer"),
  data: {
    data: {
      text: "根节点",
    },
    children: [],
  },
});

即可得到一个思维导图。想要实现更多功能?可以查看开发文档

开发

项目结构

mind-map/
├── simple-mind-map/          # 核心库
│   ├── src/
│   │   ├── core/            # 核心模块
│   │   ├── layouts/         # 布局系统
│   │   ├── plugins/         # 插件系统
│   │   ├── theme/           # 主题系统
│   │   └── render/          # 渲染系统
│   └── dist/                # 构建输出
└── web/                      # Web 应用
    ├── src/
    │   ├── pages/Edit/      # 编辑页面
    │   ├── utils/           # 工具类(含 AI 适配器)
    │   ├── function_calling/# 工具调用系统
    │   └── config/          # 配置文件
    └── package.json

常用命令

开发核心库

cd simple-mind-map
npm run lint        # ESLint 检查
npm run format      # Prettier 格式化
npm run types       # 生成 TypeScript 类型定义
npm run wsServe     # WebSocket 服务器

开发 Web 应用

cd web
npm run serve       # 启动开发服务器
npm run build       # 构建生产版本
npm run lint        # ESLint 检查
npm run format      # Prettier 格式化
npm run ai:serve    # 启动 AI 聊天服务器

构建库

cd web
npm run buildLibrary  # 构建核心库到 simple-mind-map/dist

技术栈

核心库

  • 纯 JavaScript,无框架依赖
  • 插件化架构
  • 命令模式(Command Pattern)

Web 应用

  • Vue 2.x
  • ElementUI
  • Vue Router
  • Vuex
  • Axios

AI 功能架构

适配器系统

  • base.js: 适配器基类
  • openai.js: OpenAI 兼容适配器(支持火山引擎等)
  • anthropic.js: Anthropic Claude 适配器

工具调用

  • add_node: 添加子节点
  • read_map: 读取当前思维导图
  • delete_node: 删除节点
  • update_node: 更新节点内容
  • overwrite_map: 覆盖整个思维导图

License

MIT。保留simple-mind-map版权声明和注明来源的情况下可随意商用,如有疑问或不想保留可联系作者(微信:wanglinguanfang)通过付费的方式去除。

示例:可以在你应用中的关于页面、帮助页面、文档页面、开源声明等任何页面添加以下内容:

本产品思维导图基于SimpleMindMap项目开发,版权归源项目所有,开源协议

开发帮助/技术支持/咨询等

因精力有限,及重心转变,暂不提供任何开发支持(包括有偿),请见谅!

star

如果喜欢本项目,欢迎点个 star,这对我们很重要。

Star History Chart

关于定制

如果你有个性化的商用定制需求,可以联系我们,我们提供付费开发服务,无论前端、后端、还是部署,都可以帮你一站式搞定。

谁在使用


drawon.cn(桌案)

感谢赞赏过本项目的人

最强王者


hi

钻石赞助


黄智彪@一米一栗科技

沨沄

黄金赞助


小土渣的宇宙

Chris

仓鼠

风格

LiuJL

Kyle

秀树因馨雨

黄泳

ccccs


晏江

梁辉

千帆

布林

达仁科技

沐风牧草

俊奇

庆国

Matt

雨馨


御风

兔子快跑

LSHM

newplayer

青铜赞助


Think

志斌

qp

ZXR

花儿朵朵

suka

水车

才镇

小米bbᯤ²ᴳ

*棐

南风

蜉蝣撼大叔



有希

樊笼

小逗比

天清如愿

敬明朗

飞箭

戚永峰

moom

张扬

长沙利奥软件

HaHN

继龙


易空小易

国发

建明

汪津合

博文

慕智打印-兰兰

锦冰

旭东

橘半

pluvet

皇登攀

SR

逆水行舟

L

sunniberg

sunniberg

在下青铜五

木星二号

阿晨


Alex

子豪

宏涛

最多5个字

ZX

协成

木木

好名字

lsytyrt

buddy

小川

Tobin

夏虫不语冰

晴空


Jeffrey

张文建

Lawliet

一叶孤舟

Eric

Joe

中文网字计划-江夏尧

海云

皮老板

h.r.w

时光匆匆

广兴

一亩三

xbkkjbs0246658

4399行星元帅

Xavier

:)

可米阳光

MrFujing

Sword

好好先生Ervin

胡永刚

旋风

星夜寒

神话

Towards the future

安嘉

About

SimpleMindMap(思绪思维导图):一个强大的Web思维导图。A powerful web mind map.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 71.0%
  • Vue 26.1%
  • CSS 1.8%
  • Shell 0.5%
  • HTML 0.4%
  • Less 0.2%