feat: add Electron support for headless exe service

- Add folder selection button in UI
- Add Electron main process with IPC handlers
- Support --port and --docs command line arguments
- Support --headless mode for headless service
- Add portable exe build configuration
This commit is contained in:
2026-03-18 15:05:37 +08:00
parent 5fd9274039
commit 3d703ba7ef
80 changed files with 169500 additions and 30 deletions

View File

@@ -1,12 +1,18 @@
{
"name": "xcengine-api-docs",
"version": "1.0.0",
"description": "XCSDD - API Docs & 3D Blueprint Viewer",
"author": "XCSDD",
"main": "electron/main.mjs",
"type": "module",
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"lint": "eslint .",
"preview": "vite preview"
"preview": "vite preview",
"electron:dev": "vite build && electron .",
"electron:build": "vite build && electron-builder --win --x64",
"electron:start": "electron ."
},
"dependencies": {
"@react-three/drei": "^10.7.7",
@@ -28,6 +34,8 @@
"@types/three": "^0.183.1",
"@vitejs/plugin-react": "^6.0.0",
"autoprefixer": "^10.4.21",
"electron": "^33.4.0",
"electron-builder": "^25.1.8",
"eslint": "^9.39.4",
"eslint-plugin-react-hooks": "^7.0.1",
"eslint-plugin-react-refresh": "^0.5.2",
@@ -37,5 +45,23 @@
"typescript": "~5.9.3",
"typescript-eslint": "^8.56.1",
"vite": "^8.0.0"
},
"build": {
"appId": "com.xuanchi.xcsdd",
"productName": "XCSDD",
"directories": {
"output": "release"
},
"files": [
"dist/**/*",
"electron/**/*",
"package.json"
],
"win": {
"target": "portable"
},
"portable": {
"artifactName": "XCSDD.exe"
}
}
}