obsidian-dragger产品系统Vibe Coding

我要开发同款
wolllf2026年02月27日
23阅读

技术信息

语言技术
JavaScriptTypeScript
系统类型
WebWindows
行业分类
开发工具脚本插件

作品详情

行业场景

1. 行业背景:效率工具的“两极分化”
目前笔记软件市场存在着明显的两个极端:

以 Notion 为代表的“块级编辑器”流派: 它们将文档拆解为原子化的“块(Block)”,带来了革命性的交互体验——通过拖拽即可重组逻辑、构建多栏布局。这种“乐高式”的拼装极大地提升了内容组织效率。然而,其代价是数据被锁死在厂商的云端数据库中,用户失去了对底层文件的绝对控制。

以 Obsidian 为代表的“本地纯文本”流派: 它们坚守 Markdown 原教旨主义,数据即文件,离线且长存。但受限于 Markdown 的线性字符串结构,其交互体验长期停留在“打字机”时代。想要重排逻辑,往往需要频繁的剪切、粘贴,这种断裂感在高频思考时显得极其笨拙。

2. Dragger 的核心意义:跨越物理鸿沟的桥梁
Dragger 的意义在于,它试图在不破坏 Markdown 纯粹性的前提下,将** Notion 级别的交互自由度**引入本地笔记生态。

从“行编辑器”到“块操作器”的跨越:
传统的 Markdown 编辑是基于“字符”和“行”的。Dragger 通过底层劫持与空间映射,赋予了每一段文字物理实体感。它让用户意识到,笔记不再是一张死板的纸,而是一组动态的思维模块。这种从“编辑文本”到“操纵结构”的转变,是认知效率的一次飞跃。

重塑本地数据的交互尊严:
长期以来,选择本地纯文本就意味着放弃“丝滑”。Dragger 证明了,通过精密的算法设计,我们可以在扁平的 .md 文件上,模拟出复杂的非线性操作。它让用户不再需要在“好用的 UI(Notion)”和“安全的数据(Obsidian)”之间做单选题。

适配 AI 时代的知识生产:
在 AI 辅助创作的背景下,人类的工作重心正从“从零写字”转向“对 AI 生成内容的筛选、重组与策展”。Dragger 提供的 Notion 级拖拽与多栏重排,

功能介绍

功能
🧱 块级拖拽 — 段落、标题、列表、任务、引用、Callout、表格、代码块、数学块
📐 嵌套拖拽 — 横向位置控制缩进层级,纵向位置控制插入行
🔗 多行选取拖拽 — 长按或点击选取多行,整组拖动
🎨 手柄外观可定制 — 4 种图标(圆点 / 六点 / 三横线 / 方块)、可调大小、颜色、横向偏移
📍 可视化落点指示器 — 发光线条精确显示块将被放置的位置
📱 移动端支持 — Android 已测试

项目实现

由个人独立开发
使用obsidian的
1. 块级解析与坐标映射 (Block Detection)
2. 交互状态机 (Drag Lifecycle)
3. 实时占位符预览 (Live Drop Indicator)
4. 文本重排与事务提交 (Text Reordering)
普通的 Obsidian 插件大多只是“解析文本”,而 Dragger 是在“接管交互”。它必须在原生 CM6 渲染循环、浏览器 DOM 事件以及Markdown 字符串操作之间做一个极度精密的同步。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论