{ "name": "@classhelper/desktop-client", "version": "1.3.3", "private": true, "description": "ClassHelper EXE 客户端(Electron + Vue 3 + Element Plus + Socket.IO + IndexedDB 离线缓存)", "author": "Class Helper", "main": "dist/main/index.js", "scripts": { "dev": "node scripts/dev.mjs", "build": "node ../../scripts/check-icons.mjs && npm run build:main && npm run build:renderer && npm run check:secrets", "build:main": "node scripts/build-main.mjs", "build:renderer": "vite build", "check:secrets": "node scripts/check-bundle-secrets.mjs", "start": "electron .", "smoke": "node scripts/smoke.mjs", "typecheck": "vue-tsc --noEmit -p tsconfig.json && tsc --noEmit -p tsconfig.node.json", "dist:win": "npm run build && node scripts/dist-win.mjs" }, "dependencies": { "@classhelper/shared": "workspace:*", "@element-plus/icons-vue": "^2.3.2", "axios": "^1.20.0", "element-plus": "^2.14.5", "pinia": "^4.0.3", "socket.io-client": "^4.8.3", "vue": "^3.5.42", "vue-router": "^5.3.1" }, "devDependencies": { "@types/node": "^22.20.2", "@vitejs/plugin-vue": "^6.0.8", "electron": "^44.3.0", "electron-builder": "^26.15.3", "esbuild": "^0.28.2", "typescript": "~5.9.3", "vite": "^8.3.0", "vue-tsc": "^3.3.11" } }