docs(readme): 更新项目文档添加详细说明
- 添加项目简介和主要特性介绍 - 补充完整的技术栈说明包括前端后端开发工具 - 详细描述安装与运行步骤及前置要求 - 完善项目结构目录说明 - 添加配置说明环境变量端口配置路径别名 - 补充测试命令和开发指南 - 更新贡献指南和许可证信息 - 添加作者致谢信息和注意事项
This commit is contained in:
@@ -0,0 +1,200 @@
|
||||
# Rolegram
|
||||
|
||||
一个基于 Vue 3 和 Tauri 2 构建的现代化桌面应用程序。
|
||||
|
||||
## 📖 项目简介
|
||||
|
||||
Rolegram 是一个跨平台桌面应用,结合了现代 Web 技术与原生桌面能力,提供流畅的用户体验和强大的本地功能。
|
||||
|
||||
## ✨ 主要特性
|
||||
|
||||
- 🚀 **现代化技术栈**: Vue 3.5 + TypeScript + Vite 8
|
||||
- 💻 **跨平台支持**: 基于 Tauri 2,支持 Windows、macOS 和 Linux
|
||||
- 🎨 **美观界面**: TailwindCSS 4 + DaisyUI 5 打造的用户界面
|
||||
- 🔔 **通知系统**: 集成 Tauri 通知插件
|
||||
- 💾 **本地数据库**: SQLite 支持,数据本地存储
|
||||
- 🔌 **插件系统**: 可扩展的插件架构(文件插件、文本插件等)
|
||||
- 🤖 **自动化工作流**: 支持自动化规则和定时任务
|
||||
- 💬 **聊天功能**: 内置聊天窗口和消息管理
|
||||
- 🌐 **P2P 通信**: 基于 Iroh 的去中心化通信能力
|
||||
|
||||
## 🛠️ 技术栈
|
||||
|
||||
### 前端
|
||||
- **框架**: Vue 3.5.13
|
||||
- **路由**: Vue Router 5.0.3
|
||||
- **构建工具**: Vite 8.0.0
|
||||
- **语言**: TypeScript 5.6.2
|
||||
- **样式**: TailwindCSS 4.2.1 + DaisyUI 5.5.19
|
||||
- **图标**: Lucide Icons (@lucide/vue)
|
||||
- **测试**: Vitest 4.1.0
|
||||
|
||||
### 后端 (Rust)
|
||||
- **框架**: Tauri 2.x
|
||||
- **数据库**: SQLite (tauri-plugin-sql)
|
||||
- **P2P 网络**: Iroh 0.97
|
||||
- **异步运行时**: Tokio
|
||||
- **序列化**: Serde
|
||||
|
||||
### 开发工具
|
||||
- **包管理器**: pnpm
|
||||
- **Node.js 版本**: v24.15.0 (通过 fnm 管理)
|
||||
|
||||
## 📦 安装与运行
|
||||
|
||||
### 前置要求
|
||||
|
||||
- Node.js >= 24.x (推荐使用 fnm 管理版本)
|
||||
- Rust >= 1.70
|
||||
- pnpm >= 8.x
|
||||
|
||||
### 安装依赖
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
```
|
||||
|
||||
### 开发模式
|
||||
|
||||
启动前端开发服务器和 Tauri 应用:
|
||||
|
||||
```bash
|
||||
pnpm tdev
|
||||
# 或
|
||||
pnpm run tauri dev
|
||||
```
|
||||
|
||||
仅启动前端开发服务器:
|
||||
|
||||
```bash
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
### 构建生产版本
|
||||
|
||||
```bash
|
||||
pnpm build
|
||||
```
|
||||
|
||||
构建 Tauri 应用:
|
||||
|
||||
```bash
|
||||
pnpm tauri build
|
||||
```
|
||||
|
||||
### 预览生产构建
|
||||
|
||||
```bash
|
||||
pnpm preview
|
||||
```
|
||||
|
||||
## 📁 项目结构
|
||||
|
||||
```
|
||||
rolegram/
|
||||
├── src/ # 前端源代码
|
||||
│ ├── api/ # API 接口定义
|
||||
│ ├── assets/ # 静态资源
|
||||
│ ├── components/ # Vue 组件
|
||||
│ │ ├── automation/ # 自动化相关组件
|
||||
│ │ ├── chat/ # 聊天相关组件
|
||||
│ │ └── home/ # 主页相关组件
|
||||
│ ├── composables/ # Vue 组合式函数
|
||||
│ ├── pages/ # 页面组件
|
||||
│ │ ├── home/ # 主页子页面
|
||||
│ │ ├── home.vue # 主页面
|
||||
│ │ └── login.vue # 登录页面
|
||||
│ ├── types/ # TypeScript 类型定义
|
||||
│ ├── utils/ # 工具函数
|
||||
│ ├── App.vue # 根组件
|
||||
│ └── main.ts # 入口文件
|
||||
├── src-tauri/ # Tauri/Rust 后端
|
||||
│ ├── src/
|
||||
│ │ ├── db/ # 数据库模块
|
||||
│ │ ├── handlers/ # Tauri 命令处理器
|
||||
│ │ ├── iroh/ # P2P 网络模块
|
||||
│ │ ├── plugins/ # 插件系统
|
||||
│ │ └── router/ # 消息路由
|
||||
│ ├── capabilities/ # Tauri 权限配置
|
||||
│ ├── icons/ # 应用图标
|
||||
│ └── Cargo.toml # Rust 依赖配置
|
||||
├── public/ # 公共资源
|
||||
├── .node-version # Node.js 版本配置
|
||||
├── package.json # 项目依赖配置
|
||||
├── vite.config.ts # Vite 配置
|
||||
└── tsconfig.json # TypeScript 配置
|
||||
```
|
||||
|
||||
## 🔧 配置说明
|
||||
|
||||
### 环境变量
|
||||
|
||||
- `TAURI_DEV_HOST`: Tauri 开发主机地址(可选)
|
||||
|
||||
### 端口配置
|
||||
|
||||
- Vite 开发服务器: `1420`
|
||||
- HMR WebSocket: `1421`
|
||||
|
||||
### 路径别名
|
||||
|
||||
- `@/*` → `./src/*`
|
||||
|
||||
## 🧪 测试
|
||||
|
||||
运行单元测试:
|
||||
|
||||
```bash
|
||||
pnpm vitest
|
||||
```
|
||||
|
||||
运行测试并生成覆盖率报告:
|
||||
|
||||
```bash
|
||||
pnpm vitest --coverage
|
||||
```
|
||||
|
||||
## 📝 开发指南
|
||||
|
||||
### 添加新功能
|
||||
|
||||
1. 在前端创建新的 Vue 组件和页面
|
||||
2. 如需原生功能,在 `src-tauri/src` 中添加 Rust 代码
|
||||
3. 在 `src-tauri/capabilities/default.json` 中配置所需权限
|
||||
4. 使用 Tauri API 在前端调用后端功能
|
||||
|
||||
### 数据库迁移
|
||||
|
||||
数据库迁移文件位于 `src-tauri/src/db/migrations.rs`,使用 SQLx 管理数据库 schema。
|
||||
|
||||
### 插件开发
|
||||
|
||||
插件系统位于 `src-tauri/src/plugins/`,可以创建自定义插件来扩展应用功能。
|
||||
|
||||
## 🤝 贡献指南
|
||||
|
||||
欢迎提交 Issue 和 Pull Request!
|
||||
|
||||
1. Fork 本仓库
|
||||
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
|
||||
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
|
||||
4. 推送到分支 (`git push origin feature/AmazingFeature`)
|
||||
5. 开启 Pull Request
|
||||
|
||||
## 📄 许可证
|
||||
|
||||
本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件
|
||||
|
||||
## 👥 作者
|
||||
|
||||
- **you** - 初始开发
|
||||
|
||||
## 🙏 致谢
|
||||
|
||||
- [Tauri](https://tauri.app/) - 优秀的跨平台桌面应用框架
|
||||
- [Vue.js](https://vuejs.org/) - 渐进式 JavaScript 框架
|
||||
- [Iroh](https://iroh.computer/) - 去中心化 P2P 网络库
|
||||
|
||||
---
|
||||
|
||||
**注意**: 本项目正在积极开发中,API 和功能可能会有变化。
|
||||
|
||||
Reference in New Issue
Block a user