{ "name": "vpn-proxy-gateway", "version": "0.1.0", "private": true, "engines": { "node": "24.21.x" }, "type": "module", "description": "Gateway-first VPN proxy control panel for sing-box TProxy deployments.", "scripts": { "check:runtime": "node scripts/check-sqlite-runtime.mjs", "pretest": "npm run check:runtime", "dev": "vite --host 0.0.0.0", "generate:singbox-api": "XDG_CACHE_HOME=${TMPDIR:-/tmp}/harbor-buf-cache buf generate --template buf.gen.yaml", "build": "vite build", "build:production": "npm run build && npm run build:server", "build:server": "tsc -p tsconfig.server.json", "build:test": "npm run build:production && node scripts/clean-test-dist.mjs && tsc -p tsconfig.test.json", "check:boundaries": "node scripts/check-import-boundaries.mjs", "prestart": "npm run build:production", "test": "npm run build:test && node --test", "typecheck": "tsc -p tsconfig.web.json && tsc -p tsconfig.server.json --noEmit", "version:harbor": "node scripts/harbor-version.mjs", "start": "node dist/server/main.js" }, "dependencies": { "@bufbuild/protobuf": "2.6.0", "@connectrpc/connect": "2.0.3", "@connectrpc/connect-node": "2.0.3", "@vitejs/plugin-react": "^5.0.0", "react": "^19.0.0", "react-dom": "^19.0.0", "tldts": "7.4.12", "vite": "^7.0.0" }, "devDependencies": { "@babel/parser": "7.29.3", "@bufbuild/buf": "1.47.2", "@bufbuild/protoc-gen-es": "2.6.0", "@csstools/selector-specificity": "6.0.0", "@types/node": "24.13.4", "@types/react": "^19.2.18", "@types/react-dom": "^19.2.4", "postcss": "8.5.14", "postcss-selector-parser": "7.1.4", "typescript": "7.0.2" } }