# AI 学术写作助手 - 可执行文件打包 本目录包含将前后端项目打包为单个可执行文件 (exe) 的代码和配置。 ## 目录结构 ``` package/ ├── backend/ # 后端代码(修改版,支持 exe 模式) ├── frontend/ # 前端代码(修改版,生产环境配置) ├── main.py # 统一入口文件 ├── app.spec # PyInstaller 打包配置 ├── requirements.txt # Python 依赖 ├── build.sh # Linux/macOS 构建脚本 ├── build.ps1 # Windows 构建脚本 └── README.md # 本文件 ``` ## 本地构建 ### 前置条件 - Python 3.9+ - Node.js 18+ - pip 和 npm ### 构建步骤 **Linux/macOS:** ```bash cd package chmod +x build.sh ./build.sh ``` **Windows:** ```powershell cd package .\build.ps1 ``` 构建完成后,可执行文件位于 `dist/` 目录。 ## GitHub Actions 自动构建 项目配置了 GitHub Actions 工作流,可以自动构建 Windows、Linux 和 macOS 版本的可执行文件。 ### 触发方式 1. **打标签触发**: 推送以 `v` 开头的标签时自动触发构建并创建 Release ```bash git tag v1.0.0 git push origin v1.0.0 ``` 2. **手动触发**: 在 GitHub Actions 页面手动运行工作流 ### 构建产物 - `AI学术写作助手-Windows-{version}.zip` - Windows 可执行文件 - `AI学术写作助手-Linux-{version}.tar.gz` - Linux 可执行文件 - `AI学术写作助手-macOS-{version}.tar.gz` - macOS 可执行文件 ## 运行说明 1. 下载对应平台的可执行文件 2. 解压到任意目录 3. 首次运行会自动创建 `.env` 配置文件模板 4. 编辑 `.env` 文件,填入必要的配置: - API Key(OPENAI_API_KEY、POLISH_API_KEY 等) - 管理员密码(ADMIN_PASSWORD) - JWT 密钥(SECRET_KEY) 5. 再次运行程序 6. 程序会自动打开浏览器访问 http://localhost:8000 ### 配置文件说明 `.env` 文件和数据库文件 (`ai_polish.db`) 都会保存在可执行文件同目录下,方便备份和迁移。 ### 访问地址 - 用户界面: http://localhost:8000 - 管理后台: http://localhost:8000/admin - API 文档: http://localhost:8000/docs ## 与原项目的区别 1. **运行方式**:原项目需要分别启动前端和后端服务,exe 版本一键启动 2. **配置位置**:exe 版本的 `.env` 和数据库文件在 exe 同目录 3. **前端访问**:exe 版本前后端在同一端口,无需代理 ## 技术细节 ### 前端修改 - 修改 `vite.config.js` 添加生产环境构建配置 - 修改 API 配置,生产环境直接使用根路径 ### 后端修改 - 修改 `config.py`,支持动态获取 exe 目录下的配置文件 - 数据库路径默认指向 exe 同目录 ### 统一入口 - `main.py` 创建 FastAPI 应用 - 挂载静态文件服务前端页面 - 处理 SPA 路由(admin、workspace 等) - 自动打开浏览器 ### PyInstaller 配置 - 包含所有必要的隐式导入 - 包含前端静态文件 - 包含后端应用代码 - 排除不必要的大型库