Files
world/package.json
zeekayandClaude Opus 4.8 ad713a6df0 feat(world): land the @hanzo/gui React rewrite as an opt-in canary on main
Overlays the complete 80-file src/react surface (all 58 panels, globe island,
variant tabs, analyst dock, finance terminal, OIDC PKCE callback) onto the live
origin/main backend (v2.4.51 AI-plane + events-stream fixes, kept intact). The
React surface is served ONLY to sessions that opt in via ?react (sticky cookie,
cmd/world canaryHandler); the vanilla build stays the default — nothing changes
for anyone until we flip it. @hanzogui/shell 7.6.1 (monochrome focus ring + world
surface). All gates green: typecheck:react, build:react (221kB gz), vanilla build,
canary server tests.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-24 16:26:47 -07:00

98 lines
4.9 KiB
JSON

{
"name": "@hanzo/world",
"description": "Hanzo World — real-time global intelligence dashboard.",
"private": true,
"version": "2.4.51",
"type": "module",
"scripts": {
"lint:md": "markdownlint-cli2 '**/*.md'",
"dev": "vite",
"dev:react": "vite --config vite.react.config.ts",
"build:react": "vite build --config vite.react.config.ts",
"typecheck:react": "tsc -p tsconfig.react.json --noEmit",
"dev:tech": "VITE_VARIANT=tech vite",
"dev:finance": "VITE_VARIANT=finance vite",
"build": "tsc && vite build",
"build:full": "VITE_VARIANT=full tsc && VITE_VARIANT=full vite build",
"build:tech": "VITE_VARIANT=tech tsc && VITE_VARIANT=tech vite build",
"build:finance": "VITE_VARIANT=finance tsc && VITE_VARIANT=finance vite build",
"typecheck": "tsc --noEmit",
"tauri": "tauri",
"preview": "vite preview",
"test:e2e:full": "VITE_VARIANT=full playwright test",
"test:e2e:tech": "VITE_VARIANT=tech playwright test",
"test:e2e:finance": "VITE_VARIANT=finance playwright test",
"test:e2e:runtime": "VITE_VARIANT=full playwright test e2e/runtime-fetch.spec.ts",
"test:e2e": "npm run test:e2e:runtime && npm run test:e2e:full && npm run test:e2e:tech && npm run test:e2e:finance",
"test:data": "node --test tests/*.test.mjs",
"test:sidecar": "node --test src-tauri/sidecar/local-api-server.test.mjs api/_cors.test.mjs api/youtube/embed.test.mjs api/cyber-threats.test.mjs",
"test:e2e:visual:full": "VITE_VARIANT=full playwright test -g \"matches golden screenshots per layer and zoom\"",
"test:e2e:visual:tech": "VITE_VARIANT=tech playwright test -g \"matches golden screenshots per layer and zoom\"",
"test:e2e:visual": "npm run test:e2e:visual:full && npm run test:e2e:visual:tech",
"test:e2e:visual:update:full": "VITE_VARIANT=full playwright test -g \"matches golden screenshots per layer and zoom\" --update-snapshots",
"test:e2e:visual:update:tech": "VITE_VARIANT=tech playwright test -g \"matches golden screenshots per layer and zoom\" --update-snapshots",
"test:e2e:visual:update": "npm run test:e2e:visual:update:full && npm run test:e2e:visual:update:tech",
"desktop:dev": "VITE_DESKTOP_RUNTIME=1 tauri dev",
"desktop:build:full": "VITE_VARIANT=full VITE_DESKTOP_RUNTIME=1 tauri build",
"desktop:build:tech": "VITE_VARIANT=tech VITE_DESKTOP_RUNTIME=1 tauri build --config src-tauri/tauri.tech.conf.json",
"desktop:build:finance": "VITE_VARIANT=finance VITE_DESKTOP_RUNTIME=1 tauri build --config src-tauri/tauri.finance.conf.json",
"desktop:package:macos:full": "node scripts/desktop-package.mjs --os macos --variant full",
"desktop:package:macos:tech": "node scripts/desktop-package.mjs --os macos --variant tech",
"desktop:package:windows:full": "node scripts/desktop-package.mjs --os windows --variant full",
"desktop:package:windows:tech": "node scripts/desktop-package.mjs --os windows --variant tech",
"desktop:package:macos:full:sign": "node scripts/desktop-package.mjs --os macos --variant full --sign",
"desktop:package:macos:tech:sign": "node scripts/desktop-package.mjs --os macos --variant tech --sign",
"desktop:package:windows:full:sign": "node scripts/desktop-package.mjs --os windows --variant full --sign",
"desktop:package:windows:tech:sign": "node scripts/desktop-package.mjs --os windows --variant tech --sign",
"desktop:package": "node scripts/desktop-package.mjs",
"dev:fund": "VITE_VARIANT=fund vite",
"build:fund": "VITE_VARIANT=fund tsc && VITE_VARIANT=fund vite build",
"test:e2e:fund": "VITE_VARIANT=fund playwright test"
},
"devDependencies": {
"@playwright/test": "^1.61.1",
"@tauri-apps/cli": "^2.11.4",
"@types/d3": "^7.4.3",
"@types/maplibre-gl": "^1.13.2",
"@types/react": "^19.2.17",
"@types/react-dom": "^19.2.3",
"@types/supercluster": "^7.1.3",
"@types/topojson-client": "^3.1.5",
"@types/topojson-specification": "^1.0.5",
"@vitejs/plugin-react": "^4.7.0",
"markdownlint-cli2": "^0.20.0",
"react-native": "^0.83.2",
"typescript": "^5.9.3",
"vite": "^6.4.3",
"vite-plugin-pwa": "^1.3.0",
"ws": "^8.21.1"
},
"dependencies": {
"@deck.gl/aggregation-layers": "^9.3.7",
"@deck.gl/core": "^9.3.7",
"@deck.gl/geo-layers": "^9.3.7",
"@deck.gl/layers": "^9.3.7",
"@deck.gl/mapbox": "^9.3.7",
"@hanzo/ai": "^0.2.2",
"@hanzo/brand": "^1.4.1",
"@hanzo/event": "^0.3.1",
"@hanzo/gui": "^7.3.0",
"@hanzogui/config": "^7.3.0",
"@hanzogui/shell": "^7.6.1",
"@upstash/redis": "^1.38.0",
"@xenova/transformers": "^2.17.2",
"d3": "^7.9.0",
"deck.gl": "^9.3.7",
"i18next": "^25.10.10",
"i18next-browser-languagedetector": "^8.2.1",
"mapbox-gl": "^3.27.0",
"maplibre-gl": "^5.24.0",
"onnxruntime-web": "^1.27.0",
"react": "^19.2.8",
"react-dom": "^19.2.8",
"react-native-web": "^0.21.2",
"supercluster": "^8.0.1",
"topojson-client": "^3.1.0"
}
}