{ "name": "chatoa-client", "version": "0.1.0", "private": true, "description": "ChatOA desktop client (Electron + React + TypeScript)", "main": "electron/main.cjs", "scripts": { "dev": "concurrently -k \"vite\" \"wait-on tcp:127.0.0.1:5173 && cross-env VITE_DEV_SERVER_URL=http://localhost:5173 electron .\"", "dev:web": "vite", "build": "tsc --noEmit && vite build", "build:win": "tsc --noEmit && vite build && electron-builder --win", "build:portable": "tsc --noEmit && vite build && electron-builder --win portable", "preview": "vite preview" }, "build": { "appId": "com.chatoa.desktop", "productName": "ChatOA", "directories": { "output": "release" }, "electronDist": "node_modules/electron/dist", "files": [ "dist/**/*", "electron/**/*" ], "win": { "target": [ { "target": "nsis", "arch": [ "x64" ] }, { "target": "portable", "arch": [ "x64" ] } ] }, "nsis": { "artifactName": "ChatOA-Setup-${version}-${arch}.${ext}", "oneClick": false, "allowToChangeInstallationDirectory": true, "createDesktopShortcut": true, "shortcutName": "ChatOA" }, "portable": { "artifactName": "ChatOA-Portable-${version}-${arch}.${ext}" } }, "dependencies": { "@ant-design/icons": "^5.5.2", "antd": "^5.22.0", "axios": "^1.7.9", "dayjs": "^1.11.13", "lunar-typescript": "^1.8.6", "quill": "^1.3.7", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.28.0", "socket.io-client": "^4.8.1", "zustand": "^4.5.5" }, "devDependencies": { "@types/node": "^22.10.0", "@types/quill": "^2.0.14", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@vitejs/plugin-react": "^4.3.4", "concurrently": "^9.1.0", "cross-env": "^7.0.3", "electron": "^33.2.0", "electron-builder": "^26.15.3", "typescript": "^5.6.0", "vite": "^5.4.11", "wait-on": "^8.0.1" } }