Skip to content

AI-powered open source collaboration analysis platform

Notifications You must be signed in to change notification settings

hud0567/OpenCollab-Insight

Repository files navigation

OpenCollab-Insight

Logo

开源协作网络洞察与智能分析平台

License Python React FastAPI

在线演示快速开始功能特性技术架构贡献指南


项目简介

OpenCollab-Insight 是一个基于 OpenDigger 数据和 EasyGraph 图分析能力的开源协作网络分析平台。通过深度挖掘开发者协作关系,结合 MaxKB 智能知识库,为开源社区管理者提供:

  • 直观的社区健康度分析
  • 核心贡献者识别与排名
  • 协作网络可视化图谱
  • 智能问答助手

本项目是 "OpenRank杯"开源数字生态分析与应用创新赛 的参赛作品。

功能特性

1. 协作网络可视化

  • 力导向图展示开发者协作关系
  • 节点大小反映 OpenRank 贡献度
  • 支持拖拽、缩放、高亮关联节点
  • 多种布局模式(力导向/环形)

2. 核心贡献者分析

  • PageRank 算法识别关键贡献者
  • 介数中心性分析识别"桥梁"节点
  • 多维度雷达图对比 Top 贡献者
  • 贡献趋势追踪

3. 社区健康度诊断

  • 综合健康度评分(0-100)
  • 五维度分析:活跃度、多样性、可持续性、响应速度、增长趋势
  • Bus Factor 风险预警
  • 优化建议生成

4. 智能问答助手

  • 自然语言查询社区状态
  • 基于 MaxKB 的知识库问答
  • 快捷问题模板
  • 实时分析结果解读

技术架构

┌─────────────────────────────────────────────────────────────┐
│                        Frontend                              │
│  React 18 + TailwindCSS + ECharts + Lucide Icons            │
└─────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────┐
│                        Backend API                           │
│  FastAPI + Pydantic + HTTPX                                  │
└─────────────────────────────────────────────────────────────┘
                              │
              ┌───────────────┼───────────────┐
              ▼               ▼               ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│   OpenDigger    │ │    EasyGraph    │ │     MaxKB       │
│   (数据源)       │ │   (图分析)      │ │  (智能问答)     │
└─────────────────┘ └─────────────────┘ └─────────────────┘

技术栈详情

层级 技术 说明
前端 React 18, TailwindCSS, ECharts 现代化响应式 UI
后端 FastAPI, Python 3.11+ 高性能异步 API
数据源 OpenDigger API 开源项目指标数据
图算法 EasyGraph PageRank, 社区发现等
智能问答 MaxKB 知识库问答系统
部署 Docker, Nginx 容器化一键部署

快速开始

方式一:Docker 部署(推荐)

# 克隆项目
git clone https://github.com/your-username/OpenCollab-Insight.git
cd OpenCollab-Insight

# 一键启动
docker-compose up -d

# 访问应用
# 前端: http://localhost:3000
# API:  http://localhost:8000/docs

方式二:本地开发

1. 配置环境变量(重要!)

# 复制环境变量模板
cp .env.example .env

# 编辑 .env 文件,填入你的 API 密钥
# GEMINI_API_KEY=your_actual_api_key_here
# GEMINI_BASE_URL=https://api.example.com/v1
# GEMINI_MODEL=gemini-pro

⚠️ 安全提示

  • 请勿将 .env 文件提交到 Git
  • API 密钥应通过环境变量传递
  • .env 已被 .gitignore 排除

2. 启动后端

cd backend
pip install -r requirements.txt

# 确保 .env 文件在项目根目录
python main.py

# 或使用 uvicorn
uvicorn main:app --reload --port 8000

3. 访问前端

前端已集成到后端,直接访问:

http://localhost:8000

目录结构

OpenCollab-Insight/
├── backend/                 # 后端服务
│   ├── api/                 # API 路由
│   ├── services/            # 业务逻辑
│   │   ├── opendigger_service.py  # OpenDigger 数据服务
│   │   └── graph_service.py       # EasyGraph 图分析
│   ├── main.py              # FastAPI 入口
│   ├── requirements.txt     # Python 依赖
│   └── Dockerfile
├── frontend/                # 前端应用
│   ├── src/
│   │   ├── components/      # React 组件
│   │   │   ├── Dashboard.js       # 总览仪表盘
│   │   │   ├── NetworkGraph.js    # 协作网络图
│   │   │   ├── ContributorRanking.js  # 贡献者排行
│   │   │   ├── HealthMetrics.js   # 健康度分析
│   │   │   └── ChatAssistant.js   # 智能助手
│   │   ├── data/            # 模拟数据
│   │   └── App.js           # 主应用
│   ├── package.json
│   └── Dockerfile
├── docs/                    # 文档
│   └── design_proposal.md   # 设计方案
├── docker-compose.yml       # Docker 编排
├── LICENSE                  # MIT 许可证
├── CONTRIBUTING.md          # 贡献指南
└── README.md

数据来源

本项目使用以下开源数据源:

关联开源项目

本项目基于以下开源项目构建:

项目 用途
OpenDigger 开源数据指标
EasyGraph 图算法分析
MaxKB 智能问答

许可证

本项目采用 MIT 许可证

贡献

欢迎贡献!请查看 贡献指南


OpenCollab-Insight 2025

Made with ❤️ for OpenSODA 2025

About

AI-powered open source collaboration analysis platform

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors