Rename project to JAMS (Just A simple intelligent Media Server), replace lms- prefix with jams- throughout
This commit is contained in:
+11
-9
@@ -163,33 +163,35 @@ LLM 仅在以下情况使用:
|
||||
|
||||
| 关注点 | 选型 | 理由 |
|
||||
|---|---|---|
|
||||
| 后端语言 | Go | 单二进制、HTTP/并发优秀、部署简单 |
|
||||
| 数据库 | SQLite (sqlx) | 零配置、可嵌入、单用户足够 |
|
||||
| 后端语言 | **Rust** | 内存安全、零成本抽象、媒体处理吞吐量优秀 |
|
||||
| Web 框架 | Axum | 异步、tower 兼容、REST 路由简洁 |
|
||||
| 异步运行时 | Tokio | Rust 生态事实标准异步运行时 |
|
||||
| 数据库 | SQLite (sqlx) | 零配置、可嵌入、sqlx 支持异步 |
|
||||
| 媒体处理 | ffmpeg(子进程) | 行业标准,格式支持广泛 |
|
||||
| LLM 本地 | Ollama REST API | HTTP 接口简单,内置模型管理 |
|
||||
| LLM 云端 | Anthropic SDK + OpenAI SDK | 抽象层双提供商支持 |
|
||||
| LLM 云端 | Anthropic + OpenAI HTTP API | 通过 reqwest,抽象层统一管理 |
|
||||
| 容器化 | Docker + Compose | 多服务:server + ollama + 可选 GPU |
|
||||
| 配置格式 | TOML | 人类友好,Go 生态支持(viper) |
|
||||
| Web UI | HTMX + Tailwind | 无 JS 框架,Go 模板渲染 |
|
||||
| 配置格式 | TOML | 人类友好,serde 兼容(toml crate) |
|
||||
| 前端 | 待定 | 纯后端阶段,API-First 设计 |
|
||||
|
||||
> **Rust 备选**:如果性能成为瓶颈(转码流水线),Rust 是可行选项,但 Go 开发速度更快,部署更简单,推荐作为首选。
|
||||
> **前端暂缓**:服务端提供完整 REST API,前端技术栈待后端核心稳定后再决策。
|
||||
|
||||
---
|
||||
|
||||
## 5. MVP 范围(第一阶段)
|
||||
|
||||
目标:可用的库扫描 + LLM 辅助标签 + 基础 Web UI + 流媒体播放
|
||||
目标:可用的库扫描 + LLM 辅助标签 + REST API + 流媒体播放(纯后端)
|
||||
|
||||
- [ ] 目录监听 + 文件摄入
|
||||
- [ ] 电影/电视剧分类(文件名启发式 + LLM 辅助)
|
||||
- [ ] TMDB 元数据获取(主要来源);LLM 填补缺失字段
|
||||
- [ ] 缩略图提取(TMDB 海报优先,ffmpeg 关键帧兜底)
|
||||
- [ ] SQLite 元数据存储
|
||||
- [ ] SQLite 元数据存储(sqlx 异步)
|
||||
- [ ] REST API:库列表、获取条目、触发重扫
|
||||
- [ ] 基础 Web UI:网格视图 + 视频播放器
|
||||
- [ ] HTTP 直接播放流媒体
|
||||
- [ ] Ollama 集成(本地 LLM)
|
||||
- [ ] Docker Compose 配置
|
||||
- [ ] 前端:待定(API-First,MVP 阶段无 UI)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user