{ "name": "piik", "license": "MIT", "private": true, "type": "module", "engines": { "node": ">=24.0.0 <27" }, "packageManager": "npm@11.17.0", "scripts": { "dev": "node scripts/package-licenses.mjs public/third-party-licenses.txt && vite", "build": "npm run build:client", "build:website": "node scripts/update-website-hero.mjs --check && node scripts/build-website.mjs", "preview:website": "vite preview --outDir build/site --host 127.0.0.1 --port 18890", "build:client": "node scripts/package-licenses.mjs public/third-party-licenses.txt && node --input-type=module -e \"import { readdirSync, rmSync } from 'node:fs'; const dir = 'internal/server/webassets/dist'; for (const entry of readdirSync(dir)) { if (entry !== '.gitkeep') rmSync(dir + '/' + entry, { recursive: true, force: true }); }\" && vite build", "package:client": "node scripts/assemble-client.mjs", "package:client-candidate": "node scripts/package-client-candidate.mjs", "check:client": "node scripts/check-client.mjs", "check:client-core": "node scripts/check-client.mjs --core", "check:client-capture": "node scripts/check-client.mjs --capture-only", "gate:client-media": "tsx scripts/client-media-gate.ts", "gate:client-native-host": "tsx scripts/client-native-host-gate.ts", "gate:client-browser-fanout": "tsx scripts/client-browser-fanout-gate.ts", "gate:embedded-sfu": "tsx scripts/embedded-sfu-gate.ts", "gate:client-link": "tsx scripts/client-link-gate.ts", "gate:peer-topology-loopback": "tsx scripts/peer-assisted-benchmark.ts", "gate:sfu-admission": "vitest run tests/sfu-client.test.ts tests/route-transition.test.ts && go test ./internal/server/...", "gate:access-privacy": "npm run build:client && tsx scripts/access-privacy-gate.ts", "probe:client-loopback": "tsx scripts/client-loopback-gate.ts", "gate:client-local": "tsx scripts/client-local-gate.ts", "typecheck": "tsc -b --pretty false", "test": "vitest run", "test:watch": "vitest", "check": "npm run typecheck && npm test && npm run build" }, "devDependencies": { "@types/node": "24.13.3", "@types/react": "19.2.18", "@types/react-dom": "19.2.4", "@types/sdp-transform": "3.0.0", "@types/semver": "7.8.0", "@types/ws": "8.18.1", "@vitejs/plugin-react": "6.0.5", "esbuild": "0.28.2", "react": "19.2.8", "react-dom": "19.2.8", "sdp-transform": "3.0.0", "semver": "7.8.5", "tsx": "4.23.12", "typescript": "~6.0.3", "vite": "8.2.1", "vitest": "4.1.11", "ws": "8.21.3", "zod": "4.4.3" } }