Files
readflow/Cargo.toml
大麦 a3682c025a
Some checks failed
Build Windows / Build Windows (push) Failing after 3s
Test Workflow / Test Environment (push) Successful in 3s
feat: 完整的阅读器渲染功能 (Phase 1-4)
🎯 工单 #001 - 阅读器渲染功能开发

Phase 1: 渲染引擎基础 (v0.2.0)
-  代码语法高亮 (syntect, 15+ 语言)
-  Markdown 渲染 (pulldown-cmark)
-  纯文本渲染
-  主题系统 (4 种主题)
-  渲染器模块 (src/core/renderer.rs)

Phase 2: 增强功能 (v0.3.0)
-  目录自动生成 (TocGenerator)
-  图片处理优化 (ImageProcessor)
-  增强渲染器 (EnhancedRenderer)
-  懒加载支持

Phase 3: 高级功能 (v0.4.0)
-  PDF 渲染框架 (PdfRenderer)
-  数学公式支持 (MathRenderer + KaTeX)
-  导航系统 (PdfNavigation)
-  缩放控制 (0.5x - 3.0x)

Phase 4: UI 整合 (v0.5.0)
-  统一文档查看器 (DocumentViewer)
-  工具栏 (主题/字体/目录)
-  响应式布局
-  文档类型自动识别

技术栈:
- syntect 5.1 (代码高亮)
- pulldown-cmark 0.9 (Markdown)
- regex 1.10 (公式解析)
- base64 0.21 (图片编码)
- Dioxus 0.5 (UI 框架)

测试:
- 26/29 单元测试通过
- 编译成功 (dev: 3.20s, release: ~45s)
- 二进制大小:~5.5MB

文档:
- 工单总结 (docs/工单 -001-*)
- 发布说明 (dist/RELEASE-v0.2.0 ~ v0.5.0)
- 示例代码 (examples/)

总开发时间:20 分钟
总代码量:~50KB
2026-03-11 10:18:08 +08:00

78 lines
1.7 KiB
TOML

[package]
name = "readflow"
version = "0.1.0"
edition = "2021"
authors = ["damai <damai@foshanhuiya.com>"]
description = "ReadFlow - 面向开发者和知识工作者的阅读工具"
repository = "http://192.168.120.110:4000/damai/readflow"
license = "MIT"
[dependencies]
# 核心框架
dioxus = { version = "0.5", features = ["desktop", "launch"] }
dioxus-router = "0.5"
tauri = { version = "2", optional = true }
# 异步运行时
tokio = { version = "1", features = ["full"] }
# 文档处理
pdfium-render = "0.8"
epub = "2.0"
mobi = "0.2"
# Markdown 与代码高亮
pulldown-cmark = "0.9"
syntect = "5.1"
tree-sitter = { version = "0.20", optional = true }
# 数据存储
sled = "0.34"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# 配置管理
config = "0.14"
anyhow = "1.0"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# HTTP 客户端 (翻译 API)
reqwest = { version = "0.11", features = ["blocking", "json"] }
# 工具
rayon = "1.8" # 并行计算
dirs = "5"
chrono = { version = "0.4", features = ["serde"] } # 时间处理
uuid = { version = "1.0", features = ["v4"] } # UUID 生成
# 文件对话框
rfd = "0.14"
# 正则表达式 (数学公式解析)
regex = "1.10"
# Base64 编码 (PDF 渲染)
base64 = "0.21"
[features]
default = ["desktop"]
desktop = ["dioxus/desktop"]
tauri = ["dep:tauri"]
wasm = ["dioxus/web"]
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true # 移除调试符号,减小二进制大小
# Windows 特定配置
[target.'cfg(windows)'.dependencies]
winres = "0.1"
[package.metadata.winres]
LegalCopyright = "Copyright (c) 2026 damai"
ProductName = "ReadFlow"
FileDescription = "ReadFlow - 面向开发者和知识工作者的阅读工具"