Files
xian-favor/README.md

171 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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/<id>` | GET | 获取详情 |
| `/api/items/<id>` | PUT | 更新条目 |
| `/api/items/<id>` | DELETE | 删除条目 |
| `/api/items/<id>/done` | POST | 完成待办 |
| `/api/tags` | GET | 列出标签 |
| `/api/tags` | POST | 创建标签 |
| `/api/tags/<id>` | DELETE | 删除标签 |
| `/api/emails` | GET | 列出邮箱 |
| `/api/emails` | POST | 创建邮箱 |
| `/api/emails/<id>` | PUT | 更新邮箱 |
| `/api/emails/<id>` | 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三种模式