mirror of
https://gitee.com/mirrors/AllinSSL.git
synced 2026-03-12 17:40:54 +08:00
【修复】条件节点前fromNodeId传值问题
【修复】部署参数默认错误问题 【测设】部分项目代码结构 【同步】前端项目代码
This commit is contained in:
@@ -1,169 +0,0 @@
|
||||
# ALLinSSL 前端项目
|
||||
|
||||
## 项目简介
|
||||
|
||||
ALLinSSL是一个基于Monorepo架构的前端项目,使用Turborepo进行工作区管理,专注于提供SSL证书的申请、管理、部署和监控等功能。项目采用模块化设计,将通用功能抽象为独立包,提高代码复用性和可维护性。
|
||||
|
||||
## 技术栈
|
||||
|
||||
- **框架**:Vue 3.5.x
|
||||
- **开发语言**:TypeScript
|
||||
- **包管理工具**:pnpm 9.0.0
|
||||
- **Monorepo方案**:Turborepo
|
||||
- **构建工具**:Vite 6.x
|
||||
- **状态管理**:Pinia 2.x
|
||||
- **路由**:Vue Router 4.x
|
||||
- **UI组件库**:Naive UI 2.x
|
||||
- **CSS框架**:TailwindCSS 3.x
|
||||
- **国际化**:Vue I18n 11.x
|
||||
- **测试工具**:Vitest
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
frontend/
|
||||
├── apps/ # 应用目录
|
||||
│ └── allin-ssl/ # SSL证书管理应用
|
||||
├── packages/ # 共享包目录
|
||||
│ ├── hooks/ # 可复用的Vue Hooks
|
||||
│ ├── i18n/ # 国际化相关功能
|
||||
│ ├── naive-ui/ # UI组件库封装
|
||||
│ ├── pinia/ # 状态管理相关功能
|
||||
│ ├── router/ # 路由相关功能
|
||||
│ ├── utils/ # 通用工具函数
|
||||
│ └── vite/ # Vite相关配置和插件
|
||||
├── environment/ # 环境配置
|
||||
│ ├── eslint/ # ESLint配置
|
||||
│ ├── prettier/ # Prettier配置
|
||||
│ ├── stylelint/ # Stylelint配置
|
||||
│ └── typescript/ # TypeScript配置
|
||||
├── plugin/ # 项目插件
|
||||
│ ├── plugin-i18n/ # 国际化插件
|
||||
│ ├── project-ftp-sync/ # FTP同步插件
|
||||
│ └── project-sync-git/ # Git同步插件
|
||||
├── scripts/ # 脚本目录
|
||||
├── types/ # 全局类型定义
|
||||
└── turbo.json # Turborepo配置
|
||||
```
|
||||
|
||||
## 应用
|
||||
|
||||
### allin-ssl
|
||||
|
||||
SSL证书管理平台,提供证书申请、管理、部署、监控等功能,帮助用户轻松管理和部署SSL证书,保障网站安全。
|
||||
|
||||
## 共享包
|
||||
|
||||
- **hooks**: 提供常用的Vue Hooks,简化组件逻辑
|
||||
- **i18n**: 国际化解决方案,支持多语言切换
|
||||
- **naive-ui**: 封装和扩展Naive UI组件库
|
||||
- **pinia**: 封装Pinia状态管理相关功能
|
||||
- **router**: 封装路由相关功能
|
||||
- **utils**: 提供常用工具函数和助手方法
|
||||
- **vite**: Vite相关配置和插件
|
||||
|
||||
## 环境与规范
|
||||
|
||||
- **eslint**: 代码质量检查配置
|
||||
- **prettier**: 代码格式化配置
|
||||
- **stylelint**: 样式质量检查配置
|
||||
- **typescript**: TypeScript配置
|
||||
|
||||
## 插件
|
||||
|
||||
- **plugin-i18n**: 国际化插件,支持自动提取和生成国际化资源
|
||||
- **project-ftp-sync**: FTP同步插件,用于部署前端资源
|
||||
- **project-sync-git**: Git同步插件,用于代码同步
|
||||
|
||||
## 安装
|
||||
|
||||
### 环境要求
|
||||
|
||||
- Node.js >= 18.x
|
||||
- pnpm >= 9.0.0
|
||||
|
||||
### 安装依赖
|
||||
|
||||
```bash
|
||||
# 安装所有依赖
|
||||
pnpm install
|
||||
```
|
||||
|
||||
## 开发命令
|
||||
|
||||
```bash
|
||||
# 启动所有应用的开发服务
|
||||
pnpm dev
|
||||
|
||||
# 只启动ALLinSSL应用
|
||||
pnpm dev --filter allin-ssl
|
||||
|
||||
# 构建所有应用
|
||||
pnpm build
|
||||
|
||||
# 只构建ALLinSSL应用
|
||||
pnpm build --filter allin-ssl
|
||||
|
||||
# 运行代码检查
|
||||
pnpm lint
|
||||
|
||||
# 运行类型检查
|
||||
pnpm check-types
|
||||
|
||||
# 运行测试
|
||||
pnpm test
|
||||
|
||||
# 清理构建缓存
|
||||
pnpm clear
|
||||
```
|
||||
|
||||
## 开发指南
|
||||
|
||||
### 新建应用
|
||||
|
||||
1. 在 `apps` 目录下创建新的应用目录
|
||||
2. 初始化应用配置文件和依赖
|
||||
3. 在应用的 `package.json` 中添加对共享包的依赖
|
||||
|
||||
### 使用共享包
|
||||
|
||||
在应用或其他包的 `package.json` 中添加依赖,例如:
|
||||
|
||||
```json
|
||||
"dependencies": {
|
||||
"@baota/utils": "workspace:*",
|
||||
"@baota/hooks": "workspace:*"
|
||||
}
|
||||
```
|
||||
|
||||
### 开发规范
|
||||
|
||||
1. 遵循项目的代码风格和组织方式
|
||||
2. 共享功能应提取到 `packages` 目录下的相应包中
|
||||
3. 应用特定功能应保留在各自的应用目录中
|
||||
4. 使用TypeScript进行类型定义
|
||||
5. 编写测试用例确保功能正确性
|
||||
|
||||
## 部署
|
||||
|
||||
### 构建生产版本
|
||||
|
||||
```bash
|
||||
pnpm build
|
||||
```
|
||||
|
||||
### FTP部署
|
||||
|
||||
使用内置的FTP同步插件进行部署:
|
||||
|
||||
```bash
|
||||
pnpm build
|
||||
# 自动部署到配置的FTP服务器
|
||||
```
|
||||
|
||||
## 浏览器兼容性
|
||||
|
||||
- Chrome >= 60
|
||||
- Firefox >= 55
|
||||
- Safari >= 11
|
||||
- Edge >= 79
|
||||
Reference in New Issue
Block a user