
+
+
## 使用方法
@@ -60,31 +84,186 @@ OneDocs者,一文亦闻也,乃集诸多智能提示之力,助君速览文
要参与开发和部署这个项目,请先克隆本仓库:
```bash
- git clone https://github.com/LYOfficial/OneDocs.git
+git clone https://github.com/LYOfficial/OneDocs.git
```
-安装Rust: https://rust-lang.org/zh-CN/tools/install/
+### 环境要求
+
+- Node.js(推荐 LTS)+ npm
+- Rust + Tauri CLI(桌面端开发必须)
+- macOS 用户可用以下方式安装 Rust:https://rust-lang.org/zh-CN/tools/install/
+
```bash
-# MacOS 用户选择
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
+### Tauri 版本说明(重要)
+
+在部分镜像源环境(如 `ustc`)下,Tauri Rust crate 可用版本会落后于 npm 包最新版本。
+为避免 `tauri-runtime` / `tauri-runtime-wry` 版本冲突,请固定使用当前仓库已验证可运行的版本组合,并使用**精确版本**(不要使用 `^`):
+
+- npm:
+ - `@tauri-apps/api = 2.6.0`
+ - `@tauri-apps/cli = 2.6.0`
+ - `@tauri-apps/plugin-dialog = 2.3.0`
+ - `@tauri-apps/plugin-fs = 2.4.0`
+ - `@tauri-apps/plugin-shell = 2.3.0`
+- Rust(`src-tauri/Cargo.toml`):
+ - `tauri = =2.6.0`
+ - `tauri-build = =2.6.0`
+ - `tauri-runtime = =2.9.2`
+ - `tauri-plugin-dialog = =2.3.0`
+ - `tauri-plugin-fs = =2.4.0`
+ - `tauri-plugin-shell = =2.3.0`
+
+如需升级 Tauri,请保持 npm 与 Rust 端**同一代版本**并重新验证 `npm run tauri:dev`。
-启动开发服务器:
+### 启动与构建
```bash
- npm install
- npm run tauri dev
+npm install
+
+# Web 前端(Vite)
+npm run dev
+
+# Desktop(Tauri)
+npm run tauri:dev
```
-构建:
+构建发行版:
```bash
- npm run tauri build
+# Web 前端
+npm run build
+
+# Desktop(Tauri)
+npm run tauri:build
```
+### 项目结构(核心)
+
+- src/:React + TypeScript 前端主应用
+ - components/:通用组件(上传、结果、模型选择、设置面板等)
+ - pages/:页面入口(Landing / Analysis / AnalysisResult / Settings)
+ - hooks/:核心业务 Hook(析文流程)
+ - services/:API 与 Tauri 调用封装
+ - store/:全局状态(Zustand + persist)
+ - utils/:文档解析、Markdown/LaTeX 渲染
+ - config/:模型提供商、提示词配置、功能信息
+ - i18n/:多语言资源
+ - styles/:全局与组件样式
+- src-tauri/:Tauri 桌面端(Rust)
+ - src/main.rs:Tauri 入口与命令注册
+ - src/lib.rs:请求转发与 API 调用
+- docs/:静态站点资源
+- dist/:构建输出(自动生成)
+
+### 运行流程与构成
+
+1. 用户选择文档与功能(FunctionSelector / FileUpload)
+2. DocumentProcessor 将文件解析为纯文本
+3. useAnalysis 组装提示词,调用 APIService
+4. APIService 通过 Tauri invoke 调用 Rust 层请求
+5. Rust 使用 reqwest 访问模型 API,将结果返回前端
+6. Zustand 保存结果并由 ResultDisplay 渲染、导出或复制
+
+### 功能与提示词
+
+提示词配置位于 config/prompts/index.ts,对应四类功能:
+
+- 要闻概览(news)
+- 罗森析数(data)
+- 理工速知(science,支持可选格式复查)
+- 文采丰呈(liberal)
+
+### 模型与提供商(当前内置)
+
+模型配置位于 config/providers.ts,支持官方与第三方 API、以及本地模型服务:
+
+- OneDocs:Qwen2.5-7B、Qwen3-8B、GLM-4-9B、GLM-Z1-9B 0414、GLM-4.1V-9B Thinking、GLM-4-9B 0414、DeepSeek-R1 Qwen3-8B、GLM-4-Flash
+- OpenAI:gpt-4o、gpt-4o-mini、gpt-4、gpt-3.5-turbo
+- Anthropic:Claude 3.5 Sonnet/Haiku、Claude 3 Opus/Sonnet
+- Google Gemini:gemini-3-pro、2.5-pro、2.5-flash、1.5-pro、1.5-flash
+- Moonshot:moonshot-v1-8k/32k/128k
+- 智谱 GLM:glm-4-flash/flashx/plus/0520/long/4v-plus
+- DeepSeek:deepseek-chat、deepseek-reasoner
+- Ollama(本地):llama3.2、qwen2.5、gemma2、mistral
+- LM Studio(本地):local-model
+- 兼容平台:优云智算、302.AI、小马算力、硅基流动、星河大模型、PPIO、ModelScope、OneAPI
+
+> 也可在设置中添加自定义模型(Custom Provider + 自定义模型名)。
+
+### 技术栈
+
+| 层级 | 技术 |
+|------|------|
+| 前端框架 | React 19 + TypeScript |
+| 桌面端 | Tauri v2(Rust) |
+| 构建工具 | Vite 7 |
+| 状态管理 | Zustand 5 |
+| PDF 解析 | pdfjs-dist v5(前端文本提取)+ lopdf(Rust 端图片提取) |
+| 渲染 | marked(Markdown)+ KaTeX(LaTeX) |
+| 国际化 | i18next + react-i18next |
+
+### 文档解析与限制
+
+- 支持:PDF
+- 最大文件体积:30 MB(FILE_SIZE_LIMIT)
+- 解析位于 utils/documentProcessor.ts(基于 pdfjs),图片提取位于 Rust 端(lopdf)
+
+## 贡献指南
+
+我们热烈欢迎每一位开发者的贡献!
+
+- 在开始前,请确保已阅读 [开发](#开发) 部分的环境要求与版本说明。
+- 欢迎通过 [Pull Request](https://github.com/LYOfficial/OneDocs/pulls) 或 [GitHub Issues](https://github.com/LYOfficial/OneDocs/issues) 分享您的想法与改进。
+- 提交 PR 时,请包含:变更摘要、验证步骤、UI 变更的截图或录屏。
+- Commit 信息请保持简明扼要,可使用 `feat:` / `fix:` / `docs:` 等前缀。
+
+## 版权声明
+
+版权所有 © 2024-2026 LYOfficial。
+
+本项目基于 [GNU 通用公共许可证 v3.0](https://github.com/LYOfficial/OneDocs/blob/main/LICENSE) 发布。
+
+## 鸣谢
+
+衷心感谢以下开源项目,OneDocs 的开发离不开它们:
+
+- [Tauri](https://github.com/tauri-apps/tauri) — 跨平台桌面应用框架
+- [lopdf](https://github.com/J-F-Liu/lopdf) — Rust PDF 处理库,用于图片提取
+- [pdfjs-dist](https://github.com/nicbarker/pdfjs-dist) — PDF 文本解析
+- [React](https://github.com/facebook/react) — 用户界面构建库
+- [marked](https://github.com/markedjs/marked) — Markdown 解析器
+- [KaTeX](https://github.com/KaTeX/KaTeX) — LaTeX 数学公式渲染
+- [Zustand](https://github.com/pmndrs/zustand) — 轻量状态管理
+- [i18next](https://github.com/i18next/i18next) — 国际化框架
+
+## 联系我们
+
+- 邮箱:coldregion@qq.com
+- GitHub Issues:[提交问题](https://github.com/LYOfficial/OneDocs/issues)
+- Wiki:[OneDocs Wiki](https://github.com/LYOfficial/OneDocs/wiki)
+
+### 环境变量(可选)
+
+如果要内置 OneDocs 服务的 Base URL / API Key,可设置:
+
+- VITE_ONEDOCS_API_URL
+- VITE_ONEDOCS_API_KEY
+
## 作者
- [@LYOfficial ](https://github.com/LYOfficial/) 主要开发,项目主管。
- [@JHL-HK](https://github.com/JHL-HK) 部分重构,图床提供。
+
+## 特别鸣谢
+
+> 糖方科技提供苹果软件签名
+
+
+
+## Star 里程图
+
+[](https://www.star-history.com/#LYOfficial/OneDocs&type=date&legend=top-left)
diff --git a/README_EN.md b/README_EN.md
new file mode 100644
index 00000000..31fa0ea7
--- /dev/null
+++ b/README_EN.md
@@ -0,0 +1,262 @@
+
+
+
+
+
+
+
+# OneDocs
+
+> A Single Text, All is Known.
+>
+> OneDocs, an intelligent document analysis tool.
+
+If you find this project useful, please **give it a star** in the top right corner. Your support is greatly appreciated.
+
+[](https://tauri.app/)    
+
+**Thousands of articles, known at a glance. A tool of wisdom to help you analyze and understand.**
+
+OneDocs gathers the power of intelligent prompts to help you quickly grasp the essence of documents. Whether it's news summaries, data analysis, or academic key points, everything becomes clear with just one click.
+
+## Introduction
+
+In today's data era, we need to read and analyze various documents in every industry: daily news reports, data spreadsheets in work scenarios, courseware documents in study life... These documents contain **both essence and dross**. Reading and screening manually **takes up a lot of time**. Is there a tool that can **filter out useless content** and **organize and analyze the essence** like a top student's notes for our reading and learning?
+
+So I created this AI tool, **OneDocs**, and gave it a nice Chinese name "Yi Wen Yi Wen" (一文亦闻). Combining file analysis, large model applications, and output format standardization, it deconstructs and analyzes files uploaded by users, removes useless content, and organizes them into knowledge handbooks. I hope users can understand the essence of things, learn, and progress through simple documents with the power of large models.
+
+Currently, the software supports **PDF** document format, supports **40+ models**, and supports **Windows/macOS/Linux cross-platform** use, basically meeting the needs of various users. Moreover, the software is for local download and use, with no file uploads, so it will not cause file and API Key leaks.
+
+The software has four main functions:
+
+- **News Overview** - Summary of news highlights
+- **Data Analysis** - Analysis of data content
+- **STEM Quick Know** - Organization of STEM courseware
+- **Liberal Arts Richness** - Organization of Liberal Arts courseware
+
+The analyzed results can be previewed, Markdown source code copied, and exported for download. It also supports analyzing multiple files simultaneously for merged downloads.
+
+## Screenshots
+
+
+
+
+
+
+## Usage
+
+**1 Download the Release**
+
+Find the latest version on the project release page: https://github.com/LYOfficial/OneDocs/releases/latest
+
+Find the software suitable for your system and download it.
+
+**2 Launch**
+
+After launching the software, click "Start with One Text" (始于一文) to enter the function page.
+
+**3 Fill in API KEY**
+
+Click the gear icon "Settings" in the upper right corner, fill in the API Base URL and OpenAI API Key. The default API Base URL is the official OpenAI address. If you have a third-party API service address, please replace it.
+
+After filling in, select the appropriate model for subsequent analysis operations.
+
+> Currently, only some models are supported. More model interfaces will be provided in the future.
+
+**4 Upload and Analyze**
+
+Click the "Click to Select Document" box to upload documents, and select the appropriate function on the left according to your analysis needs.
+
+After uploading and selecting the function, click the "Start Analysis" (开始析文) button to analyze.
+
+**5 Post-processing**
+
+The software comes with Markdown and LaTeX format rendering. If there is a rendering error, you can copy the Markdown format text completely to an external viewer for viewing, or click the "Export" button to export a PDF file.
+
+For more detailed instructions, please read the Wiki: [OneDocs Wiki](https://github.com/LYOfficial/OneDocs/wiki)
+
+## Development
+
+To participate in the development and deployment of this project, please clone this repository first:
+
+```bash
+git clone https://github.com/LYOfficial/OneDocs.git
+```
+
+### Requirements
+
+- Node.js (LTS recommended) + npm
+- Rust + Tauri CLI (required for desktop builds)
+- macOS users can install Rust here: https://rust-lang.org/tools/install
+
+```bash
+curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
+```
+
+### Tauri Version Notes (Important)
+
+In some mirrored registry environments (such as `ustc`), available Tauri Rust crate versions may lag behind the latest npm packages.
+To avoid `tauri-runtime` / `tauri-runtime-wry` conflicts, keep the currently validated version set and use **exact versions** (do not use `^`):
+
+- npm:
+ - `@tauri-apps/api = 2.6.0`
+ - `@tauri-apps/cli = 2.6.0`
+ - `@tauri-apps/plugin-dialog = 2.3.0`
+ - `@tauri-apps/plugin-fs = 2.4.0`
+ - `@tauri-apps/plugin-shell = 2.3.0`
+- Rust (`src-tauri/Cargo.toml`):
+ - `tauri = =2.6.0`
+ - `tauri-build = =2.6.0`
+ - `tauri-runtime = =2.9.2`
+ - `tauri-plugin-dialog = =2.3.0`
+ - `tauri-plugin-fs = =2.4.0`
+ - `tauri-plugin-shell = =2.3.0`
+
+If you upgrade Tauri, keep npm and Rust sides on the same generation and re-verify with `npm run tauri:dev`.
+
+### Run and Build
+
+```bash
+npm install
+
+# Web (Vite)
+npm run dev
+
+# Desktop (Tauri)
+npm run tauri:dev
+```
+
+Build releases:
+
+```bash
+# Web
+npm run build
+
+# Desktop (Tauri)
+npm run tauri:build
+```
+
+### Project Structure (Core)
+
+- src/: React + TypeScript front end
+ - components/: reusable UI (upload, results, model selection, settings)
+ - pages/: page entry points (Landing / Analysis / AnalysisResult / Settings)
+ - hooks/: business hooks (analysis workflow)
+ - services/: API + Tauri wrappers
+ - store/: global state (Zustand + persist)
+ - utils/: document parsing, Markdown/LaTeX rendering
+ - config/: providers, prompt configs, function metadata
+ - i18n/: localization resources
+ - styles/: global and component styles
+- src-tauri/: Tauri desktop shell (Rust)
+ - src/main.rs: Tauri entry + command registration
+ - src/lib.rs: request forwarding + API calls
+- docs/: static site assets
+- dist/: build output (generated)
+
+### Data Flow
+
+1. User picks files and a function (FunctionSelector / FileUpload)
+2. DocumentProcessor extracts plain text
+3. useAnalysis builds prompts and calls APIService
+4. APIService invokes Rust through Tauri
+5. Rust uses reqwest to call the model API and returns the result
+6. Zustand stores results, ResultDisplay renders/export/copies
+
+### Functions and Prompts
+
+Prompt configs live in config/prompts/index.ts and map to four modes:
+
+- News Overview (news)
+- Data Analysis (data)
+- STEM Quick Know (science, optional format review)
+- Liberal Arts Richness (liberal)
+
+### Models and Providers (Built-in)
+
+Provider configuration is in config/providers.ts and supports hosted APIs and local servers:
+
+- OneDocs: Qwen2.5-7B, Qwen3-8B, GLM-4-9B, GLM-Z1-9B 0414, GLM-4.1V-9B Thinking, GLM-4-9B 0414, DeepSeek-R1 Qwen3-8B, GLM-4-Flash
+- OpenAI: gpt-4o, gpt-4o-mini, gpt-4, gpt-3.5-turbo
+- Anthropic: Claude 3.5 Sonnet/Haiku, Claude 3 Opus/Sonnet
+- Google Gemini: gemini-3-pro, 2.5-pro, 2.5-flash, 1.5-pro, 1.5-flash
+- Moonshot: moonshot-v1-8k/32k/128k
+- Zhipu GLM: glm-4-flash/flashx/plus/0520/long/4v-plus
+- DeepSeek: deepseek-chat, deepseek-reasoner
+- Ollama (local): llama3.2, qwen2.5, gemma2, mistral
+- LM Studio (local): local-model
+- Compatible platforms: CompShare, 302.AI, TokenPony, SiliconFlow, Xinghe, PPIO, ModelScope, OneAPI
+
+> You can also add a custom provider and custom model name in Settings.
+
+### Tech Stack
+
+| Layer | Technology |
+|-------|-----------|
+| Frontend | React 19 + TypeScript |
+| Desktop | Tauri v2 (Rust) |
+| Build Tool | Vite 7 |
+| State Management | Zustand 5 |
+| PDF Parsing | pdfjs-dist v5 (frontend text extraction) + lopdf (Rust image extraction) |
+| Rendering | marked (Markdown) + KaTeX (LaTeX) |
+| i18n | i18next + react-i18next |
+
+### Document Parsing and Limits
+
+- Supported: PDF
+- Max file size: 30 MB (FILE_SIZE_LIMIT)
+- Parsing in utils/documentProcessor.ts (pdfjs), image extraction in Rust (lopdf)
+
+## Contributing
+
+We warmly welcome contributions from every developer!
+
+- Before starting, make sure you've read the [Development](#development) section for requirements and version notes.
+- Feel free to share your ideas and improvements via [Pull Request](https://github.com/LYOfficial/OneDocs/pulls) or [GitHub Issues](https://github.com/LYOfficial/OneDocs/issues).
+- When submitting a PR, please include: a summary of changes, verification steps, and screenshots or recordings for UI changes.
+- Keep commit messages concise; you may use prefixes like `feat:` / `fix:` / `docs:`.
+
+## License
+
+Copyright © 2024-2026 LYOfficial.
+
+This project is licensed under the [GNU General Public License v3.0](https://github.com/LYOfficial/OneDocs/blob/main/LICENSE).
+
+## Acknowledgments
+
+We sincerely thank the following open-source projects — OneDocs would not be possible without them:
+
+- [Tauri](https://github.com/tauri-apps/tauri) — Cross-platform desktop application framework
+- [lopdf](https://github.com/J-F-Liu/lopdf) — Rust PDF processing library for image extraction
+- [pdfjs-dist](https://github.com/nicbarker/pdfjs-dist) — PDF text parsing
+- [React](https://github.com/facebook/react) — UI building library
+- [marked](https://github.com/markedjs/marked) — Markdown parser
+- [KaTeX](https://github.com/KaTeX/KaTeX) — LaTeX math formula rendering
+- [Zustand](https://github.com/pmndrs/zustand) — Lightweight state management
+- [i18next](https://github.com/i18next/i18next) — Internationalization framework
+
+## Contact
+
+- Email: coldregion@qq.com
+- GitHub Issues: [Submit an issue](https://github.com/LYOfficial/OneDocs/issues)
+- Wiki: [OneDocs Wiki](https://github.com/LYOfficial/OneDocs/wiki)
+
+### Environment Variables (Optional)
+
+To provide managed OneDocs credentials, set:
+
+- VITE_ONEDOCS_API_URL
+- VITE_ONEDOCS_API_KEY
+
+## Authors
+
+- [@LYOfficial ](https://github.com/LYOfficial/) Lead Developer, Project Manager.
+- [@JHL-HK](https://github.com/JHL-HK) Partial Refactoring, Image Hosting Provider.
+
+## Star History
+
+[](https://www.star-history.com/#LYOfficial/OneDocs&type=date&legend=top-left)
diff --git a/candyrectangle.png b/candyrectangle.png
new file mode 100644
index 00000000..80ad20b4
Binary files /dev/null and b/candyrectangle.png differ
diff --git a/docs/CNAME b/docs/CNAME
index 811e1489..176ae51f 100644
--- a/docs/CNAME
+++ b/docs/CNAME
@@ -1 +1 @@
-www.onedocs.cn
\ No newline at end of file
+onedocs.ijune.cn
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
index e6fefc8a..59bc1c73 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -7,21 +7,21 @@
-
+
>
-
+
-
+
-
+