把 Word、Excel 和纯文本,萃成结构化的信息库。
萃序是一款本地优先的信息提取与整理工具:导入 .docx、.xlsx、.csv、.txt、.md 乃至任意文件,选择(或自定义)一个模板,软件会自动分析文档结构、抽取字段并归纳成条目,形成可筛选、可检索、可导出的信息管理系统。适合整理会议纪要、读书笔记、收支流水、工作日志等零散文档。
萃,是萃取;序,是秩序。
- 多格式导入:Word(.docx)、Excel / CSV(.xlsx / .xlsm / .csv)、纯文本(.txt / .md);其余任意文件可作为附件随库存档;导入第一步会列出「以下文件将被导入」清单
- Excel 单元格图片:工作表里插入的图片(浮动图片与「嵌入单元格」的新式图片)会随导入一起提取,按所在列归入对应字段——提取确认的预览表里就能看到每行的图片缩略图;单元格图片沿 metadata → richData 的完整引用链逐格对应,不会串图;同一张图被多个单元格引用时只存一份
- 自动识别:分析标题层级、表格、
key: value行与段首日期,现场推断字段与提取方式;Excel 默认选中工作簿的第一个工作表 - 手动添加条目:库页面右上角「添加条目」,不依赖导入文件直接录入信息
- 表格布局预设:每张表可选「自动判断 / 首行为标题栏 / 首列为标题栏」,纵排的字段-值表(左侧列为字段名)会自动转置;Excel 的每个工作表都可选为导入来源(按工作簿原顺序排列)
- 模板系统:内置会议纪要、读书笔记、收支流水、通用表格四个模板;字段名、类型(文本/日期/数字/标签)与提取方式(自动/关键词/正则/标题分节/表格列)均可自定义,内置模板可一键复制为可编辑副本
- 置信度确认:每个字段带 0–1 置信度,低置信度在导入预览中高亮;重复与冲突条目在入库前逐条比对(覆盖 / 跳过 / 编辑)
- 两种视图 + 多选:表格视图与卡片视图;多选启用后可在页面任意空白处拖动框选(按住 Shift 拖拽为在已有选择上追加),支持 Ctrl/Shift 点选,触屏上左右滑动即可批量圈选
- 筛选:全文搜索、按日期字段的时间段、按数值区间、按标签/包含文字组合筛选
- 图片放大预览:表格、卡片、条目详情与导入预览里的缩略图都可点击放大;浮层从被点击的缩略图所在方向长出、按同路径缩回,Esc 或点击空白处关闭并把焦点还给缩略图;关闭按钮自带衬底,任何底图上都看得清;尊重「减弱动态效果」(退化为交叉淡变)
- 导出:Markdown / 纯文本 / CSV / JSON / Word(.docx) / Excel(.xlsx,图片嵌入单元格) / PDF / 图片(每页一张 PNG) / 本地文件夹(每个条目一个 .md 或 .txt 文件 + 索引,图片可选按条目分行或按字段分列组织);支持按「全部 / 筛选结果 / 勾选条目」与所选字段导出
- 导出携带图片:Word / Excel / PDF / 图片格式的单元格图片直接嵌入或绘制;Markdown / 纯文本 / CSV / JSON 写出图片路径并把图片原文件一同导出(单文件旁
images/目录,文件夹导出按所选结构落盘原始文件) - 桌面标题栏:纯白底色,左侧 logo、右侧窗口控件、居中显示当前页面标题(库页显示库名);悬停在任意控件上时,标题栏中间会显示该控件的用途说明(可在设置中关闭);按住标题栏即可拖动窗口,启动时等数据就绪再亮出窗口,没有白屏
- 悬浮侧边栏:侧边栏是与内容区脱开的圆角悬浮卡片,左下角一键收起;折叠后悬浮把手在原位置接替展开(与收起按钮同心对齐,位置不跳变),沿收起方向同路径进出,把空间留给内容
- 移动端顶栏:右上角显示当前版本号;界面延伸到状态栏下方(edge-to-edge),顶栏与底部标签栏自动避让状态栏和手势区,状态栏图标明暗跟随主题
- 窗口状态记忆:桌面端记住上次关闭时的窗口位置与大小,下次启动自动恢复
- 界面字体:跟随系统 / 宋体(衬线)/ 楷体 / 等宽四个预设,或输入任意字体名自定义,设置页实时预览
- 界面字号:85%–130% 滑块调节全局文字大小,自绘滑块(品牌绿填充轨道 + 描边圆钮)拖动即时生效、松手保存,大字号下不破版
- 本地存储:所有数据以「文件夹 + JSON」存在本地
collecout-data文件夹,源文件与图片副本一并随库存档;不联网、不上传 - 数据位置自定义:首次启动的欢迎向导可将数据文件夹指到任意位置(默认跟随软件),也能检测并原样读取旧版本留下的现有数据;之后随时更改,单个库还可独立存放到你指定的目录
- 启动界面:白底居中 logo,以非线性曲线淡入、数据就绪后退场(桌面与移动端一致);设置页「启动动画」可选四种退场预设(放大淡出 / 缩小淡出 / 向上滑出 / 直接淡出),0.6–3 秒滑块调节最短展示时长,「预览动画」按钮按当前设置完整播放一遍,无需重启;与安卓启动画面同底色衔接,无白屏跳变,安卓 12+ 系统自带的启动屏大图标已抑制,全程没有原生启动界面感
- 动效:页面、向导步骤、视图与弹层切换均为快速非线性过渡,弹窗与抽屉的面板本体带轻微上浮缩放的材质运动,图片放大预览从缩略图方向长出、按同路径缩回,窗口亮出时轻微上浮淡入;尊重系统「减弱动态效果」设置
| 层 | 技术 |
|---|---|
| 前端 | Vue 3 + TypeScript + Vite |
| 桌面端 | Tauri 2(macOS / Windows / Linux) |
| 安卓端 | Capacitor 7 |
| 解析 | mammoth.js(Word)、SheetJS(Excel/CSV)、自研 ZIP 读取与 OOXML 解析(Excel 内嵌图片) |
| 生成 | 零依赖手写 DOCX / XLSX(stored ZIP + OOXML)与 PDF(canvas 分页 + JPEG 图像页)生成器 |
| 提取引擎 | 自研规则引擎(正则 + 关键词 + 结构启发式),预留 LLM 扩展接口 |
| 测试 | Vitest(单元测试覆盖解析、图片提取、提取、筛选、导出与库存储) |
环境要求:Node.js ≥ 20;桌面端构建需要 Rust 工具链;打包安卓 APK 需要 Android Studio。
npm install
# 浏览器预览(数据存于 localStorage,仅供开发调试)
npm run dev
# 桌面端开发(Tauri 窗口)
npm run tauri dev
# 桌面端打包
npm run tauri build
# 安卓:同步 WebView 资源后用 Android Studio 打包
npm run build && npx cap sync android
npx cap open android示例文件在 samples/ 目录(会议纪要、读书笔记、工作日志、收支流水、个人资料、商品图鉴、阅读清单),导入向导里可直接试用;其中收支流水含两个工作表,个人资料是「首列为标题栏」的纵排字段-值表,可用于体验表格布局预设;商品图鉴的两个工作表分别是浮动图片与「嵌入单元格」图片两种提取路径(npm run samples:demo 重新生成),阅读清单的两个工作表列名对齐内置「读书笔记」模板。
数据以「文件夹 + JSON」存在软件本地目录下的 collecout-data 文件夹(每个库一个文件夹:library.json 存文本与配置、files/ 存源文件与图片副本),设置页里可查看实际路径并一键打开:
| 平台 | 默认位置 |
|---|---|
| Windows | exe 所在目录的 collecout-data(绿色便携,数据跟着程序走;目录不可写时自动退回家目录 → AppData) |
| macOS | 家目录 ~/collecout-data(.app 包内写入会破坏应用签名,故探测失败后落回家目录) |
| Linux | exe 所在目录的 collecout-data(AppImage 等只读场景自动落回家目录) |
| Android | 应用外部专属目录 Android/data/<包名>/files/collecout-data |
| 浏览器预览 | localStorage(仅开发调试) |
默认位置由桌面壳(Rust)在启动时用系统文件系统权威解析——exe 目录优先、逐级回退,结果唯一确定;所选位置记录在默认数据文件夹的指针文件里,每次启动自动恢复,更改数据位置时现有数据会先复制到新位置再切换。
旧版本数据自动迁移:0.1.0 的 AppData / 安卓内部目录、0.3.0 的单文件库(libraries/<id>.json)都会在启动时搬到当前结构,原文件保留直至迁移成功;更晚版本遗落在 AppData / 家目录兜底位置的数据,欢迎向导会探测到并提供「读取现有数据」一键接回。
自 0.3.0 起:
- 桌面端首次启动会进入欢迎向导(OOBE),可把数据文件夹指到任意位置(默认跟随软件);之后在设置页可随时更改,更改时现有数据会先复制到新位置再切换。
- 自 0.7.0 起,向导还会探测旧版本留下的现有数据(AppData、家目录等兜底位置),检测到时提供「读取现有数据」选项,原样接回、不移动文件;「选择其他文件夹」也接受一个已有的萃序数据文件夹。
- 单个库可以独立于数据文件夹存放:新建库时选择「选择其他文件夹」,库文件夹(含
library.json与附件)直接落到你指定的目录;库页面可随时移动位置。外部库通过数据文件夹内的libraries/index.json登记,所在磁盘未挂载时该库自动隐藏。
推送或 PR 时,GitHub Actions(.github/workflows/build.yml)会自动构建三个产物并上传到 Actions Artifacts:
| 产物 | 运行器 | 说明 |
|---|---|---|
| Windows x64 便携版 | windows-latest |
单文件 exe,免安装,系统需带 WebView2 运行时(Win10/11 默认自带) |
| macOS arm64 DMG | macos-latest |
未做公证,首次打开需右键 → 打开,或 xattr -cr /Applications/Collecout.app |
| 安卓 APK | ubuntu-latest |
release 签名;未配置证书时自动退回 debug 签名,可直接安装 |
安卓正式签名(可选):在仓库 Secrets 里配置 ANDROID_KEYSTORE_BASE64(keystore 文件的 base64)、ANDROID_KEYSTORE_PASSWORD、ANDROID_KEYSTORE_ALIAS 三项即可。
├─ src/
│ ├─ core/ # 纯 TS 核心层(无框架依赖,全部有单测)
│ │ ├─ parsers/ # docx / xlsx / 纯文本 → 统一块结构(含 ZIP 读取与单元格图片提取)
│ │ ├─ extract/ # 规则引擎、日期识别、列映射、模板推断、布局预设
│ │ ├─ query/ # 筛选与排序
│ │ ├─ export/ # Markdown / TXT / CSV / JSON / DOCX / XLSX / PDF / 图片 / 文件夹
│ │ └─ storage/ # 存储适配层(Tauri / Capacitor / Web)
│ ├─ stores/ # Pinia 状态(库 / 模板 / 导入向导 / 设置)
│ ├─ views/ # 首页、库详情、导入向导、模板编辑器、设置、关于
│ ├─ components/ # 表格、卡片、筛选、自定义下拉、导出对话框等
│ ├─ styles/ # 设计令牌与基础样式(明暗双主题)
│ └─ locales/ # 界面文案集中管理
├─ src-tauri/ # Tauri 2 桌面壳
├─ android/ # Capacitor 安卓工程
├─ scripts/ # 图标生成(纯 Node SVG 光栅化管线)与示例文件生成
└─ samples/ # 演示与测试用示例文件
界面遵循两套原则打磨:Apple 流体界面规范(系统字体栈、半透明材质浮层、同路径进出场动效、尊重「减弱动态效果」与「降低透明度」设置、安全区与触控目标适配),以及反 AI 味准则(单一品牌绿强调色、层级靠字号字重与留白、无渐变无发光无表情符号、每个装饰都有存在理由)。
- 0.2:表格布局预设与多工作表选择、库字段快照(修复入库信息丢失)
- 0.3:数据目录自定义、库独立存放、多选与导出升级
- 0.4:Word / PDF / 图片导出、任意文件导入、Excel 单元格图片、关于页与更新检查
- 0.5:手动添加条目、Excel 导出(图片嵌入)、全格式导出携带图片、窗口状态记忆、向导与界面打磨
- 0.6:桌面标题栏与启动即就绪、任意空白处框选、向导步骤可点回、库页表格独立双轴滚动
- 0.7:OOBE 读取现有数据文件夹、界面字体设置、过渡动画补齐
- 0.8:数据位置权威解析与持久记忆(根因修复)、任务栏高分图标(WM_SETICON)、字体自定义修复、打开数据文件夹修复
- 0.9:卡片视图切换修复(单根约束)、标题栏悬停提示与纯白底色、悬浮侧边栏(可收起)、弹窗面板动效、移动端版本号
- 1.0:安卓状态栏适配(edge-to-edge 避让 + 图标明暗随主题)、启动器图标修复(完整居中、白底衬底)、启动界面(非线性淡入淡出)、界面字号滑块
- 1.1:桌面启动界面淡出修复、安卓深色模式闪退修复(系统栏桥兜底 + 关闭 force dark)、导入向导移动端适配、界面随窗口拉伸、标题栏提示开关、滑块重绘
- 1.2:侧边栏收起按钮与折叠把手统一锚定左下角(同心接替、位置不跳变)、把手沿收起方向同路径进出
- 1.3:嵌入单元格图片逐格对应(metadata → rdrichvalue → richValueRel 引用链修复)、图片放大预览统一为一个组件(方向性长出、Esc 与焦点归还、卡片视图图片也可放大)
- 1.4:启动动画四预设与时长设置(含预览播放)、安卓 12+ 系统启动屏去图标化、安卓应用名改为 Collecout
- LLM 提取接口(用户自备 OpenAI 兼容 API,语义化字段抽取)
- 条目间引用
- iOS 端(需完整 Xcode 环境)
- CSV 导入映射的列类型手动指定、模板导入导出
见 CHANGELOG.md。
MIT © 2026 MogroWang Studio