{ "name": "web-terminal", "version": "0.1.0", "private": true, "type": "module", "description": "Browser terminal over WebSocket to the host's local shell (vibe coding). LAN-only, no auth.", "engines": { "node": ">=18" }, "scripts": { "postinstall": "chmod +x node_modules/node-pty/prebuilds/darwin-*/spawn-helper 2>/dev/null || true", "start": "tsx src/server.ts", "dev": "tsx watch src/server.ts", "build": "tsc -p tsconfig.json", "build:web": "esbuild public/main.ts --bundle --format=esm --outdir=public/build --sourcemap", "dev:web": "esbuild public/main.ts --bundle --format=esm --outdir=public/build --sourcemap --watch", "typecheck": "tsc -p tsconfig.json --noEmit && tsc -p tsconfig.web.json", "test": "vitest run", "test:watch": "vitest" }, "dependencies": { "@xterm/addon-fit": "^0.11.0", "@xterm/xterm": "^6.0.0", "express": "^5.2.1", "node-pty": "^1.1.0", "ws": "^8.21.0" }, "devDependencies": { "@types/express": "^5.0.6", "@types/node": "^25.9.3", "@types/ws": "^8.18.1", "esbuild": "^0.28.1", "tsx": "^4.22.4", "typescript": "^6.0.3", "vitest": "^4.1.9" } }