程序聚合 软件案例 书签清理与归档器

书签清理与归档器

2026-06-01 17:08:04
行业:企业内部管理、生活服务
载体:插件
技术:TypeScript、React

业务和功能介绍

一、立项背景与目标
浏览器书签长期使用后往往杂乱无章,原生管理器缺乏批量整理和云端备份能力。本项目构建一个 Chrome 扩展,让用户在独立工作区中以可视化图谱方式导入、整理书签,支持写回浏览器或同步至 WebDAV 云端,并提供版本管理和撤销保护,确保操作安全可逆。
当前已落地工程基线、启动导入链路、草稿图谱编辑、本地备份恢复、WebDAV 同步等核心能力,浏览器覆盖写回仍在收尾中。
二、核心功能模块
草稿图谱(bookmark-graph):核心模块。以思维导图式布局展示书签树,支持节点创建(同级/子级)、重命名、编辑URL、删除、拖拽移动、键盘重排/提升,内置搜索、重复书签聚焦和 Ctrl+Z 撤销。节点分为 folder 和 bookmark 两类,来源标记为 browser 或 draft。
浏览器同步(browser-sync):启动引导模块。按"本地草稿优先 → 浏览器书签导入 → 首次持久化"策略完成工作区初始化。
WebDAV 同步(webdav):云端备份与恢复。支持草稿/书签快照上传,版本化存储(最多5版),支持从历史版本选择恢复并自动清理旧版本。
本地持久化(local-persistence):基于 chrome.storage.local 持久化草稿会话、WebDAV 配置和本地备份产物,覆盖操作前自动创建备份用于撤销保护。
浏览器书签适配器(browser-bookmarks):封装 Chrome 书签 API,提供读取、导入、导出和覆盖写回能力,写入失败时自动回退。
工作区入口(workspace-entry):处理扩展图标点击,实现打开或聚焦工作区页面。
三、业务流程
启动:点击扩展图标 → 打开工作区 → 检测本地草稿:有则恢复,无则读取浏览器书签导入并持久化。
编辑:在图谱工作区浏览书签树 → 通过菜单/快捷键编辑节点(创建、重命名、删除、拖拽) → 搜索查找或重复聚焦 → Ctrl+Z 撤销。
同步写回:触发"同步到浏览器" → 确认覆盖 → 自动备份浏览器书签 → 导出草稿为书签树写回浏览器 → 失败自动回退。
WebDAV 流程:配置服务端并测试连通 → 上传快照到云端(版本化存储) → 恢复时选择目标版本 → 确认前自动备份 → 执行恢复。
撤销保护:每次覆盖操作前自动备份当前状态,用户可通过"撤销覆盖"恢复到操作前的草稿或浏览器书签。

项目实现

一、整体架构与设计思路
项目采用五层架构:应用层(app)为 React 壳层与工作区编排;特性层(features)按业务域划分——bookmark-graph(图谱编辑)、browser-sync(启动引导)、webdav(云端同步)、workspace-entry(扩展入口);领域层(domain)为纯业务模型,不依赖框架;适配器层(adapters)隔离 Chrome 书签 API、chrome.storage.local、原生 fetch 等外部依赖;共享层(shared)管理文案和通用工具。
技术栈:React 19 + TypeScript + Vite,Vitest + Testing Library,Chrome Extension MV3,WebDAV 用原生 fetch。核心设计思路:业务真相在规范化草稿图谱层,浏览器和 WebDAV 是外部映射目标,所有覆盖操作先备份再执行,失败可回退。
二、负责模块与量化成果
独立完成 T01 至 T13 共 13 个里程碑,涵盖从工程 scaffold 到项目收尾的完整生命周期。
32 个源文件 + 35 个测试文件,约 21,600 行代码,测试文件数超过源文件数。已落地:浏览器书签读取/导入/导出/写回全链路(含失败自动回退);图谱 7 种编辑操作 + 键盘重排/提升;5 种变更类型的 patch 撤销;WebDAV 版本化上传(最多 5 版)+ 双端恢复;覆盖前自动备份,支持双端撤销恢复;35
个测试套件覆盖启动、编辑、拖拽、WebDAV、搜索、撤销等核心链路;状态历史与配置均持久化。
三、难点与解决方案
浏览器写回安全性:Chrome 书签 API 不可逆,中断会丢失书签。解决方案:writeManagedBrowserTree 先读快照作回滚基准,异常时自动反向回退,区分"回滚成功/失败"给出精确提示。
可视化图谱自研布局:未引入第三方图库,需手写思维导图布局。解决方案:实现递归 MindmapLayout 算法,参数化控制节点宽度、间距、分支颜色,支持 400+ 节点视口裁剪和窗口 resize 自适应。
WebDAV 权限适配:Chrome MV3 跨域需动态申请 host_permissions。解决方案:封装权限检测/申请为独立适配器,操作前显式检查,区分 denied/unavailable/invalid-origin 给出精确提示,状态持久化避免重复弹窗。
撤销与外部操作隔离:Ctrl+Z 应撤销编辑但不影响已完成的写回/上传。解决方案:撤销历史仅记录草稿内部变更,外部操作不进 undo 栈,通过 snapshotVersion 和 checkpoint 管理快照一致性。

示例图片视频


程序员晓枫
30天前活跃
方向: 前端-Web前端、后端-Python、
交付率:100.00%
相似推荐
省级税务大数据中台
从零开始构建大数据平台,构建数据中台,开发数据分析应用,用机器学习进行数据分析和风险管理。 包括: 数据管理平台 数据上云、数据标准化,数据加工,应用指标建设等。 数据分析应用 智慧大屏、一企式分析应用、纳税分析、纳服监控等等。
大文集团融媒体项目,报社核心系统策采编发系统,网站、APP显示
应技术发展升级采编、发布、网站系统,基于SpringBoot、ES、Mysql、MongoDB、Redis等技术升级 1、报题策划下达。 2、稿件编辑、发布。 3、发布系统,渠道、栏目、稿件管理。 4、网站:、:根据UI设计图使用H5、JS、swiper进行开发。 1、报题策划下达。 2、稿件编辑、发布。 3、发布系统,渠道、栏目、稿件管理。 4、网站:、:根据UI设计图使用H5、JS、swiper进行开发。
榆林市数智政协
1. 为帮助委员在线履职,与群众实时互动搭建 2. 知识库对话引用的文档可以查看切片信息,也可以预览源文件 支持功能: 1. 委员全流程提案提交办理 2. 政协新闻动态展示 3. 政协委员通讯录 4. 政协委员在线学习培训,视频观看,pdf阅览时间记录 5. 会议管理,活动管理,民生实事,数据中心 6. 社情民意全流程 7. 功能点太多,无法一一赘述,共有大功能67项,小功能8967项,接口27万+
非属地卷烟智能识别系统
非属地卷烟智能识别系统(以下简称"本系统")是一套面向烟草稽查业务的移动端智能识别应用软件,运行于 Android 智能终端。系统通过摄像头拍照或相册选图采集零售客户货架、烟柜的卷烟陈列图像,调用 AI 识别服务(同时支持在线多模态大模型 API、在线图片识别 API 两类在线接口,以及离线深度学习图片目标检测模型,可按需切换),自动检出图中烟包、条烟、卷烟的品牌、规格与厂家信息,并与本地允许清单(本地投放卷烟数据库,共 210 个品规)实时比对,将检出结果划分为"本地允许""本地不允许(非属地/新投放)""未识别"三类,以图像标注与表格两种视图呈现,帮助稽查员快速完成非属地卷烟现场核验。 传统人工肉眼核验方式下,5 名稽查员对 50 个品种单次排查平均耗时约 7.04 分钟,正确率约 92%,且受疲劳漏检等主观因素影响。本系统以 AI 图像识别替代人工辨别,单次核验时长可缩短至 30 秒以内,效率提升约 92.4%。
某单位定制智能体管理测评平台-智能体管理测评
1. 系统概述与定位 本系统是一个面向企业或个人的AI智能体(Agent)全生命周期管理平台。它不仅提供智能体对话交互功能,更核心的价值在于:允许客户根据自身业务需求动态添加、配置个性化的智能体,并对其使用效果进行量化评测。系统旨在解决大模型落地过程中“智能体创建难、管理散、效果不可控”的痛点,打造从“创建→使用→评测→优化”的闭环生态。 2. 核心功能模块 智能体动态管理:支持客户自主创建并接入多种类型的智能体。如图中所示,用户可在顶部下拉菜单选择“AI英语学习助手”或“通用助手”。平台支持智能体角色的动态注册与配置,客户可自定义智能体的提示词(Prompt)、知识库范围、模型参数及工具调用能力,实现智能体的无限扩展与灵活切换。 多会话交互与历史管理:提供流畅的对话界面,支持“流式模式”输出,提升用户等待体验。左侧“历史对话”栏记录用户的每一次会话,包括对话标题(如“hi和hello的区别”)、所属智能体类型及时间戳。支持“新建会话”,方便用户针对不同主题进行隔离讨论,同时便于后期回溯与审计。 使用效果评测平台:这是本系统的核心差异化功能。平台在后台记录用户与智能体的完整交互数据(问题、回答、响应时间等)。通过对这些数据的分析,平台可对智能体的回答质量、准确性、响应速度、用户满意度等维度进行量化评测。客户可依据评测报告,针对性地优化智能体的Prompt或知识库,从而持续提升智能体在具体业务场景下的表现。 3. 业务价值 该系统将“智能体使用”与“效果评测”深度结合,既满足了用户即开即用的对话需求,又为客户提供了持续优化智能体性能的数据支撑。通过动态添加智能体,企业可以快速构建适配不同部门(如客服、教研、行政)的专属AI助手,并通过评测机制确保其输出质量,真正实现AI能力的可管、可控、可优化。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服