How hukernel/essay works
随记是本地优先的 Electron 桌面笔记应用。用户通过窗口快速创建或打开记录,在富文本编辑器中整理内容;渲染层经 preload 暴露的桥接调用主进程,主进程负责本地存储及数据操作。记录管理、搜索、导入导出和隐私设置是围绕编辑工作流的主要分支。README 描述了 SQLite、备份恢复等能力;由于相关实现未完整采样,图中仅保留有路径和文档依据的连接。
Main entry points: App.tsx 应用协调界面 · main.ts Electron 主进程 · note-transfer.ts 笔记导入导出 · preload.ts Preload 桥接
Components 22
桌面入口
- Electron 主进程
src/main/main.ts - Preload 桥接
src/main/preload.ts - 隐私与安全
src/main/security.ts - 笔记导入导出
src/main/note-transfer.ts - HTML 导出
src/main/html-export.ts - 本地 SQLite 与索引
src/main/main.ts
笔记界面
- 应用协调界面
src/renderer/App.tsx - 工作区与记录列表
src/renderer/components/WorkspaceHome.tsx - 文档列表
src/renderer/components/DocumentListPage.tsx - 富文本编辑器
src/renderer/components/EditorArea.tsx - 格式面板
src/renderer/components/FormatPanel.tsx - 命令与快速操作
src/renderer/components/CommandPalette.tsx - 偏好与数据设置
src/renderer/components/SettingsModal.tsx - 查找面板
src/renderer/components/FindPanel.tsx
共享转换
- 笔记与设置类型
src/shared/types.ts - Markdown 转文档
src/shared/markdown-doc.ts - 文档转 Markdown
src/shared/markdown.ts - 笔记元数据
src/shared/note-metadata.ts - 笔记图片资源
src/shared/note-assets.ts
Other components
- 用户
Connections 21
- 用户 → 应用协调界面: 操作笔记
- 应用协调界面 → 工作区与记录列表: 呈现工作区
- 应用协调界面 → 文档列表: 呈现记录
- 应用协调界面 → 富文本编辑器: 编辑内容
- 应用协调界面 → 命令与快速操作: 调度命令
- 应用协调界面 → 偏好与数据设置: 配置数据
- 应用协调界面 → 查找面板: 查找替换
- 富文本编辑器 → 编辑器扩展: 启用扩展
- 应用协调界面 → 文本与搜索辅助: 处理查询文本
- 应用协调界面 → Preload 桥接: 调用桌面 API
- Preload 桥接 → Electron 主进程: 转发 IPC
- Electron 主进程 → 本地 SQLite 与索引: 读写笔记
- Electron 主进程 → 隐私与安全: 校验与保护
- Electron 主进程 → 笔记导入导出: 执行数据迁移
- 笔记导入导出 → Markdown 转文档: 解析导入文档
- 笔记导入导出 → 文档转 Markdown: 生成 Markdown
- Electron 主进程 → HTML 导出: 生成 HTML
- Electron 主进程 → 笔记图片资源: 处理笔记资源
- 应用协调界面 → 笔记元数据: 移除元数据
- 应用协调界面 → 笔记与设置类型: 使用共享类型
- Electron 主进程 → 笔记与设置类型: 使用共享类型