aMonteSl/CodeXR
GitHub: aMonteSl/CodeXR
CodeXR 是一款基于 XR 技术的 VS Code 扩展,将代码复杂度、行数等分析指标转化为可在 VR/AR 环境中实时交互的三维可视化。
Stars: 4 | Forks: 0
# Code-XR — 扩展现实中的代码可视化 (v1.1.0)
一款革命性的 Visual Studio Code 扩展,能将您的代码分析转化为沉浸式的 XR 可视化。在传统的 VS Code 面板和由 BabiaXR 与 A-Frame 驱动的令人惊叹的 XR/VR 环境中,体验您的代码指标(复杂度、代码行数、参数)。通过全面的文件分析、目录扫描和交互式 DOM 可视化,深入探索您的代码库。
**通过步入可实时更新的代码结构 XR 呈现,获得对您代码库前所未有的深刻洞察。**
[](https://www.gnu.org/licenses/gpl-3.0)
[](https://marketplace.visualstudio.com/items?itemName=aMonteSl.code-xr)
[](https://marketplace.visualstudio.com/items?itemName=aMonteSl.code-xr)
[](https://marketplace.visualstudio.com/items?itemName=aMonteSl.code-xr)
[](https://aframe.io/)
[](https://webxr.org/)
[](https://babiaxr.gitlab.io/)
[](https://code.visualstudio.com/)
[](https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts)
[](https://nodejs.org/)
[](https://www.python.org/)
[](https://amontesl.github.io/code-xr-docs/)
[](https://buymeacoffee.com/adrianadyrx)
## 官方文档
**访问我们全面的文档网站:[https://amontesl.github.io/code-xr-docs/](https://amontesl.github.io/code-xr-docs/)**
我们的官方文档包括:
- **完整的安装指南** - 逐步安装说明
- **交互式教程** - 实践学习体验
- **API 参考** - 详细的开发技术文档
- **视频指南** - 核心功能的可视化演示
- **故障排除** - 常见问题的解决方案
- **高级配置** - 自定义选项和设置
*您也可以直接通过 VS Code 中的 CodeXR 树状视图 → “了解更多”部分访问文档。*
## v1.1.0 的新特性
- **统一的分析引擎**:XR、LivePanel 和 DOM 现在共享相同的现代化分析引导程序和 payload 契约。
- **更丰富的真实指标**:文件和目录分析公开了更正后的比率、嵌套、参数、复杂度区间和聚合指标。
- **稳定的 DOM XR 可视化**:HTML DOM 分析现在会向 BabiaXR 提供 `babia-html` 所需的完整字符串化 HTML 契约。
- **XR/DOM 共享虚拟屏幕**:沉浸式场景现在包含协作虚拟屏幕以及一个控制面板,用于在已连接的客户端之间创建、调取和移除共享屏幕。
- **实时共享屏幕广播**:共享屏幕可以投射屏幕、窗口或浏览器标签页,并在已连接的设备之间同步布局更新和实时播放视频/音频。
- **XR 图表底座/表格自动缩放**:XR 图表现在安装在共享的表格/底座上,该底座会使图表重新居中,并在稳定的可视区间内按 `X`、`Y` 和 `Z` 轴重新缩放。
- **带有恢复功能的场景内 Mapping UI**:XR 场景现在在图表旁边公开了一个 Mapping UI,允许用户实时重新映射维度,检测无效的 BabiaXR 重建,恢复上次有效的映射,并在当前会话中禁用失败选项。
- **实时协作 XR/DOM 会话**:已连接的用户现在可以在同一个实时会话中看到共享的映射更改、共享的图表更新、共享的屏幕交互,以及带有服务器分配显示名称的远程存在标记。
## 版本对比/改进 v1.0.0 -> v1.1.0
探索 CodeXR v1.1.0 中引入的主要视觉和功能改进。
### 视觉场景增强
从一个简单的 A-Frame 场景,变成了一个带有自定义组件和纹理的完整沉浸式房间。
| v1.0.0 | v1.1.0 |
|:---:|:---:|
|  |  |
| *简单的 A-Frame 场景* | *带有自定义资产和纹理的沉浸式房间* |
### 分析速度与性能
对于相同的分析工作流,执行时间从 **54 秒**缩短至 **3 秒**。
这意味着**执行速度提高了 18 倍**,分析时间**减少了 94.44%**。
| v1.0.0 | v1.1.0 |
|:---:|:---:|
|  |  |
| *相同分析耗时 54 秒* | *优化后的 pipeline 耗时 3 秒* |
### 新的虚拟屏幕组件与控制器
从任何已连接的设备投射任何屏幕、标签页或窗口,并在 XR 环境中实时广播它,包括视频和音频。

### 新的底座/表格布局组件与 Mapping UI
包含一个可以重新缩放图表以保持稳定近似大小的底座,以及一个无需重新运行分析即可实时更改所表示数据的 Mapping UI。

### 交互式协作工作区
协作服务器是交互式的:用户会被识别并被分配随机名称,每一次交互都会被同步,以便所有参与者都能实时看到它(移动屏幕、投射内容、更改图表值等)。

## 视觉演示
### 实时示例 — 查看 CodeXR 实际操作
通过这些真实的演示体验 CodeXR 强大的分析能力:
#### 项目分析示例
| **BabiaXR 项目分析** | **Express.js 项目分析** |
|:---:|:---:|
|  |  |
| *BabiaXR 项目的目录分析(77 个文件)* | *Express.js 项目的目录分析(142 个文件)* |
| **JetUML 项目分析** | **单文件分析** |
|:---:|:---:|
|  |  |
| *JetUML 项目的目录分析(338 个文件)* | *简单的文件分析演示* |
### 视频教程 — 完整的学习体验
帮助您掌握 CodeXR 各个方面的综合视频指南。
#### 最新更新
**最新的 XR 分析工作流**
#### 核心界面与功能
|
新的文件 XR 分析工作流 探索用于单文件分析的更新版 XR 工作流。 |
新的目录/项目 XR 分析工作流 发现用于目录和项目分析的全新 XR 工作流。 |
**完整的 UI 教程 - 掌握整个 CodeXR 界面和工作流**
#### 文件分析工作流
**文件分析 - LivePanel 模式与 XR 模式**
**DOM 可视化 - 交互式 HTML 结构分析**
#### 目录与项目分析
|
LivePanel 模式 使用 LivePanel 分析文件(右键和 UI 方法) |
XR 模式 在扩展现实中进行沉浸式 3D 文件分析 |
**目录分析 - LivePanel 与 XR 模式**
**项目分析 - 包含 LivePanel 和 XR 两种模式**
#### 高级 AR/VR 体验
|
LivePanel 模式 带有详细指标的综合目录分析 |
XR 模式 在沉浸式环境中进行 3D 目录可视化 |
**AR 编程体验 - 现实世界中的增强现实编码**
*这些视频教程提供了所有 CodeXR 功能(包括 AR 体验)的实践演示。*
## 快速入门指南
### 30 秒快速上手
#### 方法一:通过资源管理器(右键点击)
1. 在 VS Code 资源管理器中**右键点击任何文件**
2. 选择您的分析模式:
- **"CodeXR: Analyze File (LivePanel)"** - 详细指标面板
**"CodeXR: Analyze File (XR)"** - 沉浸式 3D 可视化
- **"CodeXR: Visualize DOM"** - HTML 结构分析(仅限 HTML 文件)
#### 方法二:通过树状视图
1. 在 VS Code 侧边栏打开 **CodeXR 树状视图**
2. 展开 **"Project Structure"** 部分
3. **点击任何文件**进行分析(遵循您的配置首选项)
4. HTML 文件会自动打开 DOM 可视化
5. 其他文件使用您的首选模式(LivePanel 或 XR)
#### 方法三:通过命令面板
1. 按下 **Ctrl+Shift+P** (Windows/Linux) 或 **Cmd+Shift+P** (macOS)
2. 输入 **"CodeXR"** 查看所有可用命令
3. 选择您首选的分析模式
#### 目录分析
1. 在资源管理器中**右键点击任何文件夹**
2. 选择您的分析模式:
- **"CodeXR: Analyze Directory (LivePanel)"** - 标准目录分析
- **"CodeXR: Analyze Directory (XR)"** - 3D 目录可视化
- **"CodeXR: Analyze Directory (LivePanel Deep)"** - 递归子目录分析
- **"CodeXR: Analyze Directory (XR Deep)"** - 包含子目录的递归 3D 分析
## 了解您的结果
### LivePanel 分析功能
- **函数列表**:包含复杂度、代码行数和参数数量的可排序表格
- **复杂度分布**:显示代码库中复杂度模式的视觉图表
- **圈复杂度密度**:每个函数的高级复杂度指标
- **深入详情**:点击任何函数进行详细分析和代码导航
- **聚合指标**:目录和项目级别的摘要
- **导出功能**:保存分析结果用于文档和报告
### XR 可视化功能
- **3D 图表**:在沉浸式 3D 空间中显示函数指标的条形图、圆柱图、气泡图
- **交互式导航**:鼠标/键盘控制以及 A-Frame/WebXR 控制器的 runtime 绑定;物理头显验证仍在 v1.1.0 的待办列表中
- **实时更新**:代码的更改会立即反映在可视化中
- **可自定义映射**:选择将哪些指标映射到 X、Y、Z 维度和颜色
- **空间理解**:在 3D 空间中可视化代码复杂度关系
- **多文件可视化**:在 XR 中查看整个目录和项目
### DOM 可视化功能
- **交互式树**:点击展开/折叠 DOM 元素
- **元素详情**:查看属性、内容和层级信息
- **视觉层级**:树状结构中清晰的父子关系
- **实时更新**:在编辑 HTML 文件时查看 DOM 变化
## 分析模式概述
Code-XR 提供了强大的分析模式,每种模式都针对不同的文件类型和使用场景进行了优化。**所有分析模式均支持 24 种代码语言以及 HTML DOM 可视化**,具备全面的文件、目录和项目分析能力。
### LivePanel 分析模式(原静态分析)
**最适用于:**详细指标审查、报告生成和全面的代码分析
**功能特点:**
- 全面的函数级分析和准确的指标
- 增强的复杂度分布图表和改进的布局
- 圈复杂度密度计算和复杂度指标
- 用于详细函数分析的交互式下钻面板
- 在您编辑代码、目录和项目时实时更新
- 用于报告和文档的导出功能
- 支持标准模式和深度分析模式
### XR 分析模式
**最适用于:**在 VR/AR 环境中进行沉浸式代码探索
**功能特点:**
- 包含条形图、圆柱图、气泡图和船图的沉浸式 3D 可视化
- 在您编辑代码、目录和项目时实时更新,无需退出 VR/AR 模式
- 鼠标及 A-Frame/WebXR 控制器的 runtime 绑定,在 v1.1.0 中尚待在物理 VR 头显硬件上进行验证
- 多维度指标映射(复杂度、LOC、参数、文件大小)
- 可定制的环境和调色板,以获得最佳观看体验
- 代码复杂度和结构的空间表示
- 支持标准模式和深度分析模式
### DOM 可视化模式
**最适用于:**HTML 结构分析和 Web 开发
**功能特点:**
- 带有点击展开功能的交互式 DOM 树探索
- 具有清晰父子关系的元素层级可视化
- 实时 DOM 结构分析和属性检查
- 处理 HTML 文件时自动从任何分析命令路由至此
- 包含属性、内容和定位的元素详情
## 综合分析能力
### 常见分析功能(所有类型)
**适用于文件、目录和项目的通用能力:**
- **24 种代码语言 + HTML DOM**:全面支持 JavaScript、TypeScript、Python、C/C++、C#、Java、Ruby、Go、PHP、Swift、Kotlin、Scala、Lua、Erlang、Zig、Perl、Solidity、TTCN-3、Objective-C、Fortran、GDScript、Vue,以及 HTML DOM 可视化
- **圈复杂度**:使用 Lizard 集成进行行业标准的复杂度计算
- **代码行数指标**:总行数、代码行数、注释行数和空行数,支持基于语言的感知解析
- **函数分析**:函数计数、参数分析、每个函数的复杂度以及圈复杂度密度
- **类检测**:面向对象的结构分析,包括继承、接口和嵌套类
- **注释分析**:针对特定语言的注释检测(单行、多行、文档)
- **实时更新**:内容更改时自动重新分析(适用于所有分析模式:LivePanel、XR、DOM)
- **多种可视化模式**:在 LivePanel(详细面板)、XR(沉浸式 3D)或 DOM(HTML 结构)之间进行选择
### 文件分析细节
**单个文件的深入分析:**
- **单文件焦点**:集中分析一个文件,提供逐个函数的详细分解
- **函数级指标**:单个函数的复杂度、参数和代码行数
- **代码导航**:从分析结果直接导航到特定的函数和类
- **即时分析**:立即获得结果,以便快速评估代码质量
- **导出单个报告**:保存特定文件的详细报告
### 目录分析细节
完整的目录分析实现
- **批处理**:分析整个目录,并提供进度跟踪和状态更新
- **递归扫描**:用于全面遍历子目录的深度分析模式(可配置深度)
- **层级指标**:跨目录结构的聚合复杂度和 LOC 指标
- **智能文件检测**:通过扩展名自动识别并过滤可分析的文件
- **目录级报告**:显示目录复杂度分布的综合指标
- **子目录比较**:比较不同子目录之间的复杂度
- **大型目录优化**:高效处理包含数百个文件的目录
- **选择性分析**:可选择排除某些子目录或文件模式
### 项目分析细节
**工作区级别的全面分析:**
- **工作区级扫描**:分析整个 VS Code 工作区,包括所有文件夹和子项目
- **跨语言指标**:跨不同编程语言的组合复杂度指标
- **项目架构洞察**:了解整体项目复杂度分布和热点
- **语言分布分析**:查看项目中每种编程语言所占的百分比
- **项目级聚合**:整个项目的总代码行数、函数、类和复杂度
- **综合报告**:覆盖整个项目结构和复杂度的详细分析报告
- **大型项目优化**:经过优化,能够分析包含数千个文件的项目
## 支持的语言
Code-XR 通过其统一的分析引擎,为 24 种代码语言以及 HTML DOM 可视化提供全面的分析支持:
### 完整的语言支持矩阵
| 语言 | 扩展名 | 分析类型 | 注释检测 | 类检测 |
|----------|------------|----------------|-------------------|-----------------|
| **JavaScript** | .js, .mjs, .cjs | LivePanel, XR | C 风格 (//, /* */) | ES6 Classes |
| **TypeScript** | .ts, .tsx | LivePanel, XR | C 风格 (//, /* */) | Classes & Interfaces |
| **Python** | .py, .pyw, .pyi | LivePanel, XR | Hash (#) + Docstrings | Classes & Methods |
| **C/C++** | .c, .cpp, .cc, .cxx, .h, .hpp, .hxx | LivePanel, XR | C 风格 (//, /* */) | Classes & Structs |
| **C#** | .cs | LivePanel, XR | C 风格 (//, /* */) | Classes & Namespaces |
| **Java** | .java | LivePanel, XR | C 风格 (//, /* */) | Classes & Interfaces |
| **Ruby** | .rb, .rbw | LivePanel, XR | Hash (#) + Block (=begin/=end) | Classes & Modules |
| **Go** | .go | LivePanel, XR | C 风格 (//, /* */) | Structs & Interfaces |
| **PHP** | .php, .phtml, .php3, .php4, .php5 | LivePanel, XR | C 风格 + Hash (//, #, /* */) | Classes & Traits |
| **Swift** | .swift | LivePanel, XR | C 风格 (//, /* */) | Classes & Structs |
| **Kotlin** | .kt, .kts | LivePanel, XR | C 风格 (//, /* */) | Classes & Objects |
| **Scala** | .scala, .sc | LivePanel, XR | C 风格 (//, /* */) | Classes & Objects |
| **Lua** | .lua | LivePanel, XR | 双连字符 (--) | Table-based OOP |
| **Erlang** | .erl, .hrl | LivePanel, XR | 百分号 (%) | Modules |
| **Zig** | .zig | LivePanel, XR | C 风格 (//) | Structs |
| **Perl** | .pl, .pm | LivePanel, XR | Hash (#) | Packages |
| **Solidity** | .sol | LivePanel, XR | C 风格 (//, /* */) | Contracts |
| **TTCN-3** | .ttcn, .ttcn3 | LivePanel, XR | C 风格 (//, /* */) | Modules |
| **Objective-C** | .m, .mm | LivePanel, XR | C 风格 (//, /* */) | Classes & Categories |
| **Fortran** | .f90, .f95, .f03, .f08, .f | LivePanel, XR | 感叹号 (!) | Modules & Types |
| **GDScript** | .gd | LivePanel, XR | Hash (#) | Classes |
| **Vue.js** | .vue | LivePanel, XR | HTML () | Component Analysis |
| **HTML** | .html, .htm, .xhtml | DOM 可视化 | HTML 注释 | 元素结构 |
### 各语言的分析能力
**所有语言均支持:**
- 代码行数 (LOC) 统计及精确解析
- 使用行业标准算法进行圈复杂度分析
- 函数参数计数与分析
- 基于特定语言规则的准确注释检测
- 结合智能文件监控的实时分析
- 支持批处理的多文件分析
**高级功能:**
- **注释分析**:针对单行、多行和文档注释的语言感知解析
- **类检测**:面向对象的结构分析,包括继承和嵌套类
- **函数指标**:参数计数、复杂度评分和密度计算
- **文件组织**:在树状视图中按语言进行智能排序和过滤
## VR/AR 导航控制
### VR 控制器
- **左摇杆**:在 3D 空间中向前/向后/向左/向右移动
- **右摇杆**:平滑旋转视角,实现舒适的导航
- **手部追踪**:自然的基于手势的交互(支持的设备)
- **控制器 Runtime 钩子**:该扩展包含通过 A-Frame/WebXR 组件实现的控制器射线和摇杆绑定,但在 v1.1.0 中尚未在物理头显/控制器硬件上进行验证
### 桌面控制
- **鼠标**:点击并拖动以围绕代码可视化旋转视角
- **WASD 键**:像第一人称游戏一样在 3D 空间中导航
- **滚轮**:放大和缩小,以获得详细或概览的视角
- **方向键**:用于微调移动的替代导航方式
## 管理活动分析
树状视图中的 **"Active Analyses"** 部分提供了全面的会话管理:
- **查看状态**:查看当前正在分析哪些文件、目录或项目
- **防止重复**:自动防止对目标进行多次分析
- **左键点击操作菜单**:点击任何活动分析以打开其操作菜单,包含详情、浏览器访问、导出和关闭选项
- **轻松清理**:关闭不再需要的分析以释放系统资源
- **会话详情**:查看有关每个活动分析的详细信息
- **浏览器集成**:直接在浏览器中打开分析
- **导出以进行调试**:将完整生成的分析文件夹复制到任何位置,以进行手动检查或调试
## 配置和自定义
### 分析设置
直接从树状视图或 VS Code 首选项中访问设置:
- **默认分析模式**:在 LivePanel 和 XR 之间选择作为您的默认模式
- **深度分析设置**:配置目录和项目分析的默认行为
- **防抖动时间**:调整分析对代码更改的响应速度
- **自动分析**:启用/禁用文件保存时的自动重新分析
- **文件过滤**:配置在分析中包含/排除哪些文件类型
### XR 环境设置
自定义您的沉浸式体验:
- **图表类型**:条形图、圆柱图、气泡图、船图及更多可视化选项
- **调色板**:Business、Blues、Commerce、Flat、Foxy 和其他专业主题
- **环境主题**:Forest、Dream、City、Space 等沉浸式背景
- **维度映射**:自定义将哪些指标映射到 3D 维度和颜色
- **性能设置**:调整渲染质量以获得最佳的 VR/AR 体验
## 安装与设置
### 前置条件
- **VS Code**:1.98.0 或更高版本
- **Python**:在 Windows、Linux 和 macOS 上自动配置(如有需要,将创建隔离的虚拟环境)
- **WebXR 浏览器**:Chrome、Edge 或 Firefox Reality,用于 VR/AR 功能(可选)
- **现代硬件**:推荐用于获得最佳 XR 体验
### 快速安装
1. 打开 **Visual Studio Code**
2. 转到 **Extensions** (Ctrl+Shift+X)
3. 搜索 **"Code-XR"**
4. 点击 **"Install"**
5. **重启 VS Code** 以获得完整功能
### 首次设置
- Code-XR 会在首次使用时自动设置 Python 环境
- 基础功能无需额外配置
- HTTPS 证书在首次启动时在本地生成,并存储在扩展的 VS Code global storage 中,以确保 WebXR 兼容性
- 自动创建虚拟环境 (.venv) 以实现隔离的依赖项
## 真实用例
### 代码质量评估
- **代码审查前**:快速识别需要关注的复杂函数
- **重构规划**:可视化整个代码库中的复杂度热点
- **技术债务**:通过重复分析跟踪复杂度随时间的变化趋势
- **代码规范**:确保代码符合复杂度和质量标准
### 团队协作
- **架构讨论**:在团队会议中分享 3D 可视化
- **新人入职**:帮助新团队成员了解代码库结构
- **AR 演示**:使用 AR 模式进行沉浸式的代码演示
- **代码审查**:为审查复杂代码提供增强的视觉上下文
- **共享工作会话**:创建或移动共享的虚拟屏幕,重新映射图表,并实时观看其他参与者与同一个在线 XR/DOM 房间的交互
### 教育用途
- **学习模式**:可视化不同的编程模式如何影响复杂度
- **算法比较**:在 3D 空间中比较多种实现
- **代码指标教育**:通过交互式可视化理解复杂度指标
- **编程课程**:借助视觉辅助工具教授软件工程概念
## 性能提示与最佳实践
### 性能优化
- **大文件**:对于超过 1000 行的文件,增加防抖延迟
- **资源管理**:关闭未使用的分析以释放系统资源
- **目录分析**:先使用标准模式,然后再使用深度模式进行全面分析
- **多个项目**:使用 LivePanel 模式进行快速分析,使用 XR 进行深度探索
### VR/AR 最佳实践
- **AR 模式**:在移动设备或 AR 头显上使用以获得最佳体验
- **VR 导航**:在长时间的分析会话中注意休息,以防疲劳
- **控制器设置**:在开始 VR 会话前确保控制器已充电;请注意,v1.1.0 的控制器交互尚未在物理头显硬件上进行验证
- **照明**:确保室内有充足的照明以进行 AR 追踪
### 分析工作流
1. **从 LivePanel 开始**:通过 LivePanel 分析获得概览
2. **在 XR 中探索**:使用 XR 模式对复杂代码进行沉浸式探索
3. **使用活动分析**:从树状视图监控所有打开的可视化
4. **配置设置**:根据您的编码习惯调整防抖时间
5. **目录分析**:从标准模式开始,使用深度模式进行全面覆盖
## 技术架构
### 分析引擎
- **基于 Python 的协调器**:重新设计的基于 Python 的分析协调器,以提高准确性
- **多语言解析**:对 24 种代码语言及 HTML DOM 可视化的高级解析能力
- **Lizard 集成**:使用 Lizard 工具进行行业标准的复杂度分析
- **性能优化**:经过优化,可高效处理大型代码库
### 可视化引擎
- **BabiaXR 集成**:使用 BabiaXR 框架进行强大的 3D 渲染
- **A-Frame 1.7.1**:用于沉浸式体验的最新 WebXR 框架
- **交互式面板**:用于 LivePanel 分析的响应式 Web 面板
- **实时数据绑定**:代码更改与可视化之间的实时更新
### 会话管理
- **统一注册表**:集中的会话跟踪和管理
- **生命周期管理**:正确的初始化、监控和清理
- **进度跟踪**:为长时间运行的操作提供实时进度报告
- **错误处理**:全面的错误恢复和用户反馈
## 依赖项与要求
### 最终用户要求
- **Visual Studio Code**:1.98.0 或更高版本
- **Node.js**:扩展运行时需要 16+ 版本
- **Python**:3.7+ 版本(通过虚拟环境自动管理)
- **内存**:最低 4GB RAM,大型项目建议 8GB
- **存储空间**:扩展需要 100MB,外加用于存放分析结果的空间
### 自动依赖项
Code-XR 会自动管理以下依赖项:
- **Python 虚拟环境**:在 VS Code 的 `globalStorage` 目录中创建
- **Lizard**:代码复杂度分析工具
- **必需的 Python 包**:根据需要自动安装
### 可选依赖项
- **WebXR 浏览器**:用于完整的 VR/AR 体验
- **VR 头显**:Oculus、Valve Index、HTC Vive 等(可选)
- **AR 设备**:兼容 ARCore/ARKit 的设备(可选)
## 开发
### 从源码构建
```
# Clone repository
git clone https://github.com/aMonteSl/CodeXR.git
cd CodeXR
# Install dependencies
npm install
# Compile extension
npm run compile
# Build for production
npm run package
```
### 构建命令
```
# One-time build
npm run compile
# Watch mode for development
npm run watch
# Create VSIX package
npm run package:vsix
# Run tests
npm run test
```
### 开发要求(贡献者)
- **Node.js**:16+
- **Python**:3.7+(用于分析组件)
- **TypeScript**:用于扩展开发
- **Webpack**:用于打包(自动配置)
## 贡献
我们欢迎您的贡献!以下是您可以提供帮助的方式:
1. 在 GitHub 上 **Fork 该仓库**
2. 为您的更改 **创建一个功能分支**
3. **进行更改** 并附带适当的测试
4. **提交一个 pull request** 并附带详细的描述
5. **遵循我们的编码规范** 并包含文档
### 贡献领域
- **语言支持**:添加对其他编程语言的支持
- **可视化**:新的图表类型和可视化模式
- **性能**:针对大型代码库的优化
- **文档**:改进指南和示例
- **测试**:扩大测试覆盖率
## 支持与社区
### 获取帮助
- **GitHub Issues**:在 [GitHub Issues](https://github.com/aMonteSl/CodeXR/issues) 报告错误和请求功能
- **文档**:全面的指南和示例
- **社区**:分享您的可视化和用例
### 功能请求
- 通过 VS Code Marketplace 评价提交
- 创建带有用例的详细 GitHub Issues
- 参与关于新功能的社区讨论
## 许可证
该项目基于 **GNU General Public License v3.0 (GPLv3)** 授权 - 有关详细信息,请参阅 [LICENSE](LICENSE) 文件。
### GPLv3 摘要
- 您可以自由使用、学习和修改该软件。
- 如果您分发修改后的版本,您还必须在 GPLv3 下提供源代码。
- 分发给其他人的衍生作品必须保持与 GPLv3 兼容的条款。
- 该软件不提供任何担保。
## 致谢
- **BabiaXR 团队**:感谢他们提供的强大可视化框架
- **A-Frame 社区**:感谢他们对 WebXR 支持和沉浸式 Web 技术的贡献
- **Lizard 工具**:感谢其提供可靠的代码复杂度分析
- **VS Code Extension API**:感谢他们提供这个可扩展的平台
- **开源社区**:感谢持续不断的反馈和贡献
**使用 Code-XR v1.1.0 体验前所未有的代码可视化 - 当全面的代码分析遇上扩展现实!**
通过沉浸式可视化、全面的分析以及对代码库结构和复杂度的实时洞察,彻底改变您的开发工作流。
## 支持 CodeXR 的开发
如果您觉得 CodeXR 很有价值,并希望支持其持续开发,请考虑给开发者买杯咖啡:
[](https://buymeacoffee.com/adrianadyrx)
您的支持将帮助我:
- 添加新功能和进行改进
- 修复错误并维护兼容性
- 提供更好的支持和文档标签:MITM代理, SOC Prime, WebXR, 代码分析, 代码可视化, 凭证管理, 开发工具, 扩展现实, 数据可视化, 自动化攻击, 逆向工具