# Xian Favor - 收藏关注系统 一个灵活的收藏管理系统,支持文本、链接、专栏、待办等多种内容类型,提供命令行、API、Web三种操作方式。 ## 功能特性 - **多种内容类型**: 文本片段、网址链接、个人专栏、待办事项 - **标签系统**: 灵活的标签分类,支持多标签 - **状态管理**: 待办事项支持待处理/进行中/已完成状态 - **优先级**: 待办事项支持低/中/高/紧急优先级 - **截止日期**: 待办事项支持设置截止日期 - **全文搜索**: 快速搜索标题、内容、备注 - **统计面板**: 实时统计各类型、状态数量 ## 安装 ```bash cd works/xian-favor pip install -e . ``` ## 使用方式 ### 命令行 (CLI) ```bash # 添加文本笔记 xian_favor add text "这是我的笔记" -t "笔记,重要" # 添加链接 xian_favor add link "https://example.com" --title "示例网站" -t "技术" # 添加专栏 xian_favor add column "https://column.example.com/feed" --title "技术专栏" --source "RSS" -t "订阅" # 添加待办(高优先级,截止日期) xian_favor add todo "完成项目" -p high -d "2026-12-31" -t "工作" # 列出所有条目 xian_favor list # 筛选:只看待办 xian_favor list --type todo # 筛选:只看进行中的待办 xian_favor list --type todo --status in_progress # 筛选:按标签 xian_favor list --tag 技术 # 搜索 xian_favor search "关键词" # 查看详情 xian_favor show 1 # 编辑 xian_favor edit 1 --status completed --note "已完成" # 完成待办(快捷命令) xian_favor done 1 # 删除 xian_favor delete 1 # 标签管理 xian_favor tags xian_favor tags --delete "旧标签" # 统计信息 xian_favor stats # 启动API服务 xian_favor serve --port 19014 ``` ### API 服务 启动服务: ```bash xian_favor serve # 或指定端口 xian_favor serve --port 19014 ``` API端点: | 端点 | 方法 | 说明 | |------|------|------| | `/api/items` | GET | 列出条目 (支持 type/status/tag/keyword 参数) | | `/api/items` | POST | 创建条目 | | `/api/items/` | GET | 获取详情 | | `/api/items/` | PUT | 更新条目 | | `/api/items/` | DELETE | 删除条目 | | `/api/items//done` | POST | 完成待办 | | `/api/tags` | GET | 列出标签 | | `/api/tags` | POST | 创建标签 | | `/api/tags/` | DELETE | 删除标签 | | `/api/emails` | GET | 列出邮箱 | | `/api/emails` | POST | 创建邮箱 | | `/api/emails/` | PUT | 更新邮箱 | | `/api/emails/` | DELETE | 删除邮箱 | | `/api/send-email` | POST | 发送收藏到邮箱 | | `/api/stats` | GET | 统计信息 | | `/api/search` | GET | 搜索 (参数 q=关键词) | ### Web 界面 访问 `http://localhost:19014` 即可使用Web界面: - 侧边栏快速筛选(类型、状态) - 搜索框实时搜索 - 统计卡片实时更新 - 添加/编辑/删除操作 - 一键完成待办 ## 数据存储 数据保存在 `data/xian_favor.db` (SQLite数据库) ## 端口 - 默认端口: **19014** ## 项目结构 ``` xian-favor/ ├── xian_favor/ │ ├── __init__.py │ ├── cli.py # 命令行工具 │ ├── api.py # API + Web服务 │ ├── db.py # 数据库操作 │ └── config.py # 配置 ├── data/ │ └── xian_favor.db # 数据库 ├── pyproject.toml ├── requirements.txt └── README.md ``` ## 版本历史 - v1.9.0 (2026-04-14): 发送邮件功能 + 邮箱管理 - 每个收藏卡片添加"发送邮件"按钮 - 选择已有邮箱或输入新邮箱发送 - 新邮箱自动保存到邮箱管理 - 邮箱管理页面:添加、编辑、删除邮箱 - SMTP配置支持环境变量(SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASS) - v1.8.0 (2026-04-13): AI自动添加功能,智能识别文本类型并整理数据 - 首页新增"AI添加"按钮 - 粘贴文本/链接/笔记等,AI自动识别类型并提取关键信息 - 支持文本、链接、专栏、待办四种类型自动识别 - 自动生成标签和标题 - v1.7.0 (2026-04-13): 编辑收藏时支持更改类型,动态显示对应字段 - v1.6.0 (2026-04-13): 标签管理添加编辑功能,支持修改标签名称 - v1.5.1 (2026-04-13): 标签管理添加搜索功能,实时过滤标签列表 - v1.5.0 (2026-04-13): 首页添加分页功能,每页20条记录 - v1.4.0 (2026-04-13): 首页添加导出按钮,一键导出所有收藏为JSON文件 - v1.3.2 (2026-04-13): 编辑和添加模态框改为大尺寸(modal-lg) - v1.3.1 (2026-04-13): 备注改名为详情,支持换行显示,扩大输入框 - v1.3.0 (2026-04-13): 标签管理功能和输入自动提示 - 侧边栏新增"标签管理"入口 - 标签管理页面:显示所有标签、使用条目数、创建/删除标签 - 添加/编辑时标签输入支持自动提示(输入时显示匹配的已有标签) - 点击提示标签快速添加 - v1.2.1 (2026-04-13): 卡片显示两行,第二行显示内容预览 - v1.2.0 (2026-04-13): 压缩首页卡片高度,更紧凑的列表布局 - v1.1.1 (2026-04-13): 编辑备注改为多行输入框 - v1.1.0 (2026-04-13): 网页端支持查看详情和编辑功能 - v1.0.0 (2026-04-12): 初始版本,支持CLI/API/Web三种模式