This project aims to produce a software visualization metaphor (in this case a code city) from any java project with the help of CK, A-Frame and BabiaXR (e.g. to help with onboarding processes)
- A-Frame
- Three.js
- aframe-extras
- aframe-babia-components
- aframe-htmlmesh
- CK code metric analyzer
- Vue.js
- Vitest
- TailwindCSS
- Webpack
Install dependencies:
cd webpack-vue-codecity
npm i
Run project:
npm run dev
visit http://localhost:5173/ to see the file uploader
cd .\webpack-vue-codecity\src\examples\ck-metrics\
java -jar ck-0.7.1-SNAPSHOT-jar-with-dependencies.jar \
<project dir> \
<use jars:true|false> \
<max files per partition:0=automatic selection> \
<variables and fields metrics?:true|false> \
<output dir> \
example:
java -jar ck-0.7.1-SNAPSHOT-jar-with-dependencies.jar C:\Users\USER\IdeaProjects\PROJECT\src true 0 false .\
This will yield 2 files: class.csv and method.csv, but we will only need to import class.csv
Change file contents in package and run:
npx patch-package 'package-name'
In our case:
npx patch-package aframe-babia-components
To apply existing patches (./webpack-vue-codecity/patches),
first delete the package (aframe-babia-components) you need to patch from node_modules, and then run:
npx patch-package
or
npm i
Refer to INFO.TODO.md and the Wiki for more Information