Photoshop/README.md

319 lines
11 KiB
Markdown

# 开源项目评分标准说明文档
## 1. 概述
本评分系统旨在全面评估开源项目的质量、活跃度和成熟度。评分体系包含多个维度,每个维度都有其特定的评分标准和改进建议。
## 2. 评分维度
### 2.1 基础要素评分
## 开源许可证评分
- **满分标准**: 使用标准开源许可证(MIT/Apache/GPL等) - 100分
- **不合格标准**: 无许可证 - 0分
- **改进建议**: 建议使用标准的开源许可证以明确项目的使用条款和限制
### 2.2 问题处理评分
## 未解决issue评分
- **优秀**: 未解决issue较少 (80-100分)
- **良好**: 未解决issue较多 (60-80分)
- **待改进**: 未解决issue很多 (0-60分)
- **改进建议**: 保持适度的未解决issue数量,及时处理重要issue
## 已解决issue评分
- **优秀**: 已解决issue很多 (80-100分)
- **良好**: 已解决issue较多 (60-80分)
- **待改进**: 已解决issue较少 (0-60分)
- **改进建议**: 提高issue解决率,保持良好的问题跟踪和处理机制
### 2.3 安全性评分
包含四个等级的安全警告评分:
- 低风险安全警告 (100分/0分)
- 中等风险安全警告 (100分/0分)
- 高风险安全警告 (100分/0分)
- 严重风险安全警告 (100分/0分)
每个等级的评分标准:
- **满分标准**: 无相应级别警告
- **不合格标准**: 存在多个相应级别警告
- **改进建议**: 根据风险等级优先处理安全问题,确保项目安全性
### 2.4 社区活跃度评分
## Star数评分
- **优秀**: Star很多 (80-100分)
- **良好**: Star较多 (60-80分)
- **待改进**: Star较少 (0-60分)
- **改进建议**: 提高项目影响力,完善文档和功能以吸引更多用户关注
## 关注者评分
- **优秀**: 关注者很多 (80-100分)
- **良好**: 关注者较多 (60-80分)
- **待改进**: 关注者较少 (0-60分)
- **改进建议**: 增加项目曝光度,保持更新以维持用户关注度
## Fork数评分
- **优秀**: 分支数很多 (80-100分)
- **良好**: 分支数较多 (60-80分)
- **待改进**: 分支数较少 (0-60分)
- **改进建议**: 鼓励社区贡献,完善协作指南以促进分支开发
### 2.5 开发活跃度评分
## 提交次数评分
- **优秀**: 提交次数很多 (80-100分)
- **良好**: 提交次数较多 (60-80分)
- **待改进**: 提交次数较少 (0-60分)
- **改进建议**: 保持稳定的开发活跃度,定期提交代码更新
## 开发者数量评分
- **优秀**: 开发者数量很多 (80-100分)
- **良好**: 开发者数量较多 (60-80分)
- **待改进**: 开发者数量较少 (0-60分)
- **改进建议**: 扩大开发团队,培养核心贡献者
## 发布版本数评分
- **优秀**: 发布版本数很多 (80-100分)
- **良好**: 发布版本数较多 (60-80分)
- **待改进**: 发布版本数较少 (0-60分)
- **改进建议**: 建立规范的版本发布流程,保持稳定的迭代节奏
## 3. 总体成熟度评分
- **优秀**: 项目成熟,维护良好 (80-100分)
- **良好**: 项目稳定,有待改进 (60-80分)
- **一般**: 项目基本可用,需要加强维护 (40-60分)
- **待改进**: 项目初期或疏于维护 (0-40分)
- **改进建议**: 根据各项分值改进薄弱环节,提高项目整体质量
## 4. 评分使用建议
1. 定期进行评分,跟踪项目发展状况
2. 针对低分项优先改进
3. 关注安全警告,及时处理安全问题
4. 持续完善文档和社区建设
5. 保持稳定的更新和维护频率
## 5.接口文档
### 接口名称
项目成熟度分析接口
### 接口路径
```
/maturityAnalyse/
```
### 请求方法
```
GET
```
### 请求参数
| 参数名 | 类型 | 是否必填 | 描述 |
| ---------- | ------ | -------- | ------------------ |
| owner | string | 是 | GitLink 仓库拥有者 |
| repository | string | 是 | GitLink 仓库名称 |
### 示例请求
```
bash
复制代码
GET /maturityAnalyse/?owner=xuos&repository=xiuos
```
### 返回格式
返回数据为 JSON 格式,结构如下:
```
{
"data": {
"scores": {
"license_score": {
"score": 100,
"description": "开源许可证评分",
"criteria": {
"100": "使用标准开源许可证(MIT/Apache/GPL等)",
"0": "无许可证"
},
"suggestion": "建议使用标准的开源许可证以明确项目的使用条款和限制"
},
"open_issue_score": {
"score": 1,
"description": "未解决issue评分",
"criteria": {
"80-100": "未解决issue较少",
"60-80": "未解决issue较多",
"0-60": "未解决issue很多"
},
"suggestion": "保持适度的未解决issue数量,及时处理重要issue"
},
"closed_issue_score": {
"score": 0,
"description": "已解决issue评分",
"criteria": {
"80-100": "已解决issue很多",
"60-80": "已解决issue较多",
"0-60": "已解决issue较少"
},
"suggestion": "提高issue解决率,保持良好的问题跟踪和处理机制"
},
"low_advisory_score": {
"score": 100,
"description": "低风险安全警告评分",
"criteria": {
"100": "无低风险警告",
"0": "多个低风险警告"
},
"suggestion": "定期检查并修复安全隐患,即使是低风险问题也应重视"
},
"moderate_advisory_score": {
"score": 100,
"description": "中等风险安全警告评分",
"criteria": {
"100": "无中等风险警告",
"0": "多个中风险警告"
},
"suggestion": "优先处理中等风险安全问题,避免安全隐患扩大"
},
"high_advisory_score": {
"score": 100,
"description": "高风险安全警告评分",
"criteria": {
"100": "无高风险警告",
"0": "多个高风险警告"
},
"suggestion": "高风险安全问题必须立即处理,可考虑发布安全补丁版本"
},
"critical_advisory_score": {
"score": 100,
"description": "严重风险安全警告评分",
"criteria": {
"100": "无严重风险警告",
"0": "多个严重风险警告"
},
"suggestion": "严重安全问题需要紧急修复并及时通知用户更新"
},
"stars_score": {
"score": 42,
"description": "项目Star数评分",
"criteria": {
"80-100": "Star很多",
"60-80": "Star较多",
"0-60": "Star较少"
},
"suggestion": "提高项目影响力,完善文档和功能以吸引更多用户关注"
},
"watching_score": {
"score": 100,
"description": "项目关注者评分",
"criteria": {
"80-100": "关注者很多",
"60-80": "关注者较多",
"0-60": "关注者较少"
},
"suggestion": "增加项目曝光度,保持更新以维持用户关注度"
},
"fork_score": {
"score": 53,
"description": "项目分支数评分",
"criteria": {
"80-100": "分支数很多",
"60-80": "分支数较多",
"0-60": "分支数较少"
},
"suggestion": "鼓励社区贡献,完善协作指南以促进分支开发"
},
"commits_number_score": {
"score": 100,
"description": "提交次数评分",
"criteria": {
"80-100": "提交次数很多",
"60-80": "提交次数较多",
"0-60": "提交次数较少"
},
"suggestion": "保持稳定的开发活跃度,定期提交代码更新"
},
"developer_number_score": {
"score": 100,
"description": "开发者数量评分",
"criteria": {
"80-100": "开发者数量很多",
"60-80": "开发者数量较多",
"0-60": "开发者数量较少"
},
"suggestion": "扩大开发团队,培养核心贡献者"
},
"release_number_score": {
"score": 100,
"description": "发布版本数评分",
"criteria": {
"80-100": "发布版本数很多",
"60-80": "发布版本数较多",
"0-60": "发布版本数较少"
},
"suggestion": "建立规范的版本发布流程,保持稳定的迭代节奏"
},
"overall_maturity_score": {
"score": 76.61538461538461,
"description": "总体成熟度评分",
"criteria": {
"80-100": "项目成熟,维护良好",
"60-80": "项目稳定,有待改进",
"40-60": "项目基本可用,需要加强维护",
"0-40": "项目初期或疏于维护"
},
"suggestion": "根据各项分值改进薄弱环节,提高项目整体质量"
}
}
}
}
```
### 返回字段说明
- data
: 返回的数据对象。
- scores
: 各项评分的详细信息。
- **license_score**: 开源许可证评分。
- **open_issue_score**: 未解决 issue 的评分。
- **closed_issue_score**: 已解决 issue 的评分。
- **low_advisory_score**: 低风险安全警告评分。
- **moderate_advisory_score**: 中等风险安全警告评分。
- **high_advisory_score**: 高风险安全警告评分。
- **critical_advisory_score**: 严重风险安全警告评分。
- **stars_score**: 项目 Star 数评分。
- **watching_score**: 项目关注者评分。
- **fork_score**: 项目分支数评分。
- **commits_number_score**: 提交次数评分。
- **developer_number_score**: 开发者数量评分。
- **release_number_score**: 发布版本数评分。
- **overall_maturity_score**: 总体成熟度评分。