-
Notifications
You must be signed in to change notification settings - Fork 39
Expand file tree
/
Copy pathpackage.json
More file actions
139 lines (139 loc) · 7.46 KB
/
package.json
File metadata and controls
139 lines (139 loc) · 7.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
{
"name": "urdf-studio",
"description": "Professional URDF design and visualization workstation. Supports rapid editing, collision optimization, modular assembly, parameter configuration, and AI review.",
"keywords": [
"urdf",
"robotics",
"visualization",
"webgl",
"three.js",
"ros",
"simulation",
"kinematics",
"collision-editor",
"robot-assembly",
"mjcf",
"usd"
],
"private": true,
"version": "2.0.0",
"type": "module",
"scripts": {
"inspection-criteria:generate": "node scripts/generate_inspection_criteria.mjs",
"ai-prompts:generate": "node scripts/generate_ai_prompt_templates.mjs && node scripts/generate_inspection_criteria.mjs",
"dev": "vite",
"build": "npm run generate:check && npm run build:app",
"lint": "npm run lint:eslint && npm run lint:style",
"lint:eslint": "eslint . --cache --max-warnings=0",
"lint:style": "stylelint \"src/**/*.css\"",
"format": "prettier --write \"README*.md\" \"*.{json,js,mjs,cjs}\" \".prettierrc.json\" \".github/**/*.yml\"",
"format:check": "prettier --check \"README*.md\" \"*.{json,js,mjs,cjs}\" \".prettierrc.json\" \".github/**/*.yml\"",
"typecheck": "node ./node_modules/typescript/bin/tsc -p tsconfig.json --noEmit",
"typecheck:quality": "node ./node_modules/typescript/bin/tsc -p tsconfig.quality.json --noEmit",
"check": "npm run verify:fast",
"prepare": "husky",
"build:robot-canvas-lib": "vite build -c vite.lib.config.ts",
"build:robot-canvas-lib:types": "node ./node_modules/typescript/bin/tsc -p tsconfig.lib.json && node ./scripts/rewrite_dts_aliases.mjs ./dist/lib-types",
"build:package:react-robot-canvas": "npm run -w @urdf-studio/react-robot-canvas build",
"pack:package:react-robot-canvas": "npm run -w @urdf-studio/react-robot-canvas pack:dry-run",
"version:show": "node scripts/versioning/show.mjs",
"version:bump": "node scripts/versioning/bump.mjs",
"preview": "vite preview",
"code-editor:generate-urdf-schema": "node scripts/generate_urdf_schema_metadata.mjs",
"mjcf:compare": "esbuild scripts/mujoco/mjcf_compare.ts --bundle --platform=node --format=cjs --alias:@=./src --external:jsdom --outfile=.tmp/mjcf_compare.cjs && node .tmp/mjcf_compare.cjs",
"sdf:compare": "esbuild scripts/regression/validate_sdf_cli_truth.ts --bundle --platform=node --format=cjs --alias:@=./src --external:jsdom --outfile=tmp/sdf-cli-audit/run.cjs && node tmp/sdf-cli-audit/run.cjs",
"regression:shadow-hand-hover": "node scripts/regression/run_shadow_hand_hover_regression.mjs",
"codex:retry": "python3 scripts/codex_resilient_exec.py",
"codex:retry:strict": "python3 scripts/codex_resilient_exec.py --completion-token TASK_COMPLETE",
"codex:gui": "python3 scripts/codex_resilient_gui.py",
"codex:tui": "python3 scripts/codex_resilient_tui.py",
"codex:key-router:deploy": "python3 scripts/codex_key_router/deploy_and_start.py",
"codex:key-router:deploy:dry": "python3 scripts/codex_key_router/deploy_and_start.py --dry-run",
"codex:key-router:gui": "python3 scripts/codex_key_router/deploy_gui.py",
"codex:key-router:server-gui": "python3 scripts/codex_key_router/server_gui.py",
"codex:key-router:simple-gui": "python3 scripts/codex_key_router/simple_gui_router.py",
"omx:tmux:10": "bash scripts/omx_tmux_grid.sh",
"omx:tmux:10:dry": "bash scripts/omx_tmux_grid.sh --dry-run",
"generate": "npm run ai-prompts:generate",
"generate:check": "node scripts/generate_ai_prompt_templates.mjs --check && node scripts/generate_inspection_criteria.mjs --check",
"build:with-generate": "npm run generate && npm run build",
"test": "npm run test:unit:app-hooks && npm run test:fixtures:imports",
"test:fixtures:imports": "esbuild scripts/regression/validate_import_fixture_matrix.ts --bundle --platform=node --format=cjs --alias:@=./src --external:jsdom --outfile=tmp/regression/fixture-import-matrix.cjs && node tmp/regression/fixture-import-matrix.cjs",
"test:fixtures:myosuite-imports": "esbuild scripts/regression/validate_myosuite_imports.ts --bundle --platform=node --format=cjs --alias:@=./src --external:jsdom --outfile=tmp/regression/myosuite-import-matrix.cjs && node tmp/regression/myosuite-import-matrix.cjs",
"test:fixtures:unitree-ros-usd-export-benchmark": "node scripts/regression/validate_unitree_ros_usd_export_benchmark.mjs",
"test:fixtures:unitree-ros-urdfs": "npx tsx scripts/regression/validate_unitree_ros_urdfs.ts",
"test:fixtures:unitree-usd": "node scripts/regression/validate_unitree_selected_browser.mjs",
"verify:fast": "npm run format:check && npm run lint && npm run typecheck:quality && npm run test && npm run build",
"verify:fixtures": "npm run test:fixtures",
"verify:full": "npm run verify:fast && npm run verify:fixtures",
"build:app": "vite build",
"test:fixtures:unitree-ros-usda": "node scripts/regression/validate_unitree_ros_usda_selected_browser.mjs",
"test:fixtures": "npm run test:fixtures:imports && npm run test:fixtures:unitree-ros-urdfs && npm run test:fixtures:unitree-usd && npm run test:fixtures:unitree-ros-usda && npm run test:fixtures:unitree-ros-usd-export-benchmark",
"dev:with-generate": "node scripts/start_dev_server.mjs --generate",
"test:unit:app-hooks": "node --test src/app/hooks/useEditableSourcePatches.test.ts src/app/hooks/workspaceGeneratedSourceState.test.ts src/app/utils/assemblyRootComponentSelection.test.ts src/app/utils/importPreparation.workerSafe.test.ts src/app/components/UnifiedViewer.typecheck.test.ts src/app/handoff/bootstrap.test.ts src/app/utils/popupHandoffImport.test.ts"
},
"license": "Apache-2.0",
"dependencies": {
"@monaco-editor/react": "^4.7.0",
"@react-three/drei": "^10.7.7",
"@react-three/fiber": "^9.4.2",
"@types/jsdom": "^27.0.0",
"@types/react-syntax-highlighter": "^15.5.13",
"html2canvas": "^1.4.1",
"immer": "^11.1.3",
"jsdom": "^28.0.0",
"jspdf": "^4.0.0",
"jszip": "^3.10.1",
"libarchive.js": "^2.0.2",
"linkedom": "^0.18.12",
"lucide-react": "^0.555.0",
"monaco-editor": "^0.55.1",
"openai": "^4.0.0",
"prismjs": "^1.30.0",
"react": "^19.2.0",
"react-dom": "^19.2.0",
"react-draggable": "^4.5.0",
"react-markdown": "^10.1.0",
"react-resizable": "^3.1.3",
"react-simple-code-editor": "^0.14.1",
"react-syntax-highlighter": "^16.1.0",
"remark-gfm": "^4.0.1",
"three": "^0.181.2",
"zustand": "^5.0.10"
},
"devDependencies": {
"@commitlint/cli": "^20.5.0",
"@commitlint/config-conventional": "^20.5.0",
"@eslint/js": "^9.39.4",
"@tailwindcss/vite": "^4.1.18",
"@types/node": "^22.14.0",
"@types/prismjs": "^1.26.5",
"@types/react-dom": "^19.2.3",
"@types/react-resizable": "^3.0.8",
"@vitejs/plugin-react": "^5.0.0",
"autoprefixer": "^10.4.23",
"eslint": "^9.39.4",
"globals": "^17.4.0",
"husky": "^9.1.7",
"lint-staged": "^16.4.0",
"postcss": "^8.5.6",
"prettier": "^3.8.1",
"puppeteer": "^24.36.1",
"react-devtools": "^7.0.1",
"stylelint": "^17.6.0",
"stylelint-config-standard": "^40.0.0",
"tailwindcss": "^4.1.18",
"tsconfig-paths": "^4.2.0",
"typescript": "~5.8.2",
"typescript-eslint": "^8.58.0",
"vite": "^6.2.0"
},
"lint-staged": {
"*.{js,mjs,cjs,ts,tsx,jsx,css,md,json,yml,yaml}": "prettier --write",
"*.{js,mjs,cjs,ts,tsx,jsx}": "eslint --cache --fix --max-warnings=0 --no-warn-ignored",
"*.css": "stylelint --fix --allow-empty-input"
},
"workspaces": [
"packages/*"
]
}