# mavecosystem **Repository Path**: zuo_zou/mavecosystem ## Basic Information - **Project Name**: mavecosystem - **Description**: ///////////////// - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-03-16 - **Last Updated**: 2024-07-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # holo_ecosystem ## 开发框架 本项目为前后端分离的前端部分,使用Vue(2.x)框架开发 ### Project setup ``` npm install ``` ### Compiles and hot-reloads for development ``` npm run serve ``` ## 主体页面 ### NodeAnalysis.vue 提供三个生态各三个维度评分的软件包列表,需要后端数据初始化。为确保前端渲染正常,数据格式遵循以下规范: ```javascript maven_lists: [] pypi_lists: [] euler_lists: [] ``` 以`maven_lists`为例,需要的列表结构如下: ```javascript maven_lists: [ [critical_pkg_list], [pagerank_pkg_list], [depe_pkg_list], ] // 二维列表 ``` 其中第二维列表中元素是字典格式: ```python # critical_pkg_list的列表元素 pkg_dict = { "name": String, "score": String, } # pagerank_pkg_list的列表元素 pkg_dict = { "name": String, "info": String, "pagerank": String, } # depe_pkg_list的列表元素 pkg_dict = { "name": String, "info": String, "depen_cnt": String, } ``` ### Retrieval.vue 提供不同生态的信息检索服务,并提供知识图谱展示服务(由neovis.js库直接连接neo4j数据库实现,因此应确保数据库能够访问) ```txt bolt://211.71.15.39:7687 bolt://211.71.15.39:8687 bolt://211.71.15.39:9687 ``` 本页面需要后端提供**包、项目、漏洞**检索服务,搜索结果将存储至`pkg_list`、`pjt_list`、`cve_list`,并在前端显示,结构如下: ```javascript pkg_list: [ { "pkg_id": Stirng, "pkg_info": Stirng }, ... ] pjt_list: [ { "name": Stirng, "license": Stirng }, ... ] cve_list: [ { "name": Stirng, "description": Stirng }, ... ] ``` 此外还需要后端提供**包、项目、漏洞**详细信息检索服务,检索结果将存储至`pkg_info`、`pjt_info`、`cve_info`,结构如下: ```javascript pkg_info: { "ID": String, // name@version (name+version in euler) "name": String, "version": Stirng, "info": Stirng, "repo_url": Stirng, "homepage": String, "version_list": List: [ String, ... ] } pjt_info: { "name": String, "language": Stirng, "license": Stirng, "description": Stirng, "URL": String, } cve_info: { "name": String, "publish_time": Stirng, "description": Stirng, } ``` ### VulnAnalysis.vue 提供不同生态的漏洞服务,并提供知识图谱展示服务(由neovis.js库直接连接neo4j数据库实现,因此应确保数据库能够访问) ```txt bolt://211.71.15.39:7687 bolt://211.71.15.39:8687 bolt://211.71.15.39:9687 ``` 本页面需要后端提供漏洞路径检索服务,搜索结果将存储至`cve_path_list`、`pkg_path_list`,并在前端显示,结构如下: ```javascript cve_path_list: [ { "cve": String, // 影响“目标分析包”的漏洞ID "path_list": List: [ String, ... // 路径上的节点名(包ID、CVE-ID) ], "is_direct": Boolean, // 是否直接影响到包 "path_cnt": Num, // “包-漏洞”路径的数量 } ] pkg_path_list: [ { "pkg": String, // 受到“目标分析漏洞”影响的包ID "path_list": List: [ String, ... // 路径上的节点名(包ID、CVE-ID) ], "is_direct": Boolean, // 是否直接影响到包 "path_cnt": Num, // “漏洞-包”路径的数量 } ] ```