{ "name": "headplane", "private": true, "sideEffects": false, "type": "module", "scripts": { "build": "remix vite:build && vite build", "dev": "node server/dev.mjs", "start": "node build/headplane/server.js", "typecheck": "tsc" }, "dependencies": { "@dnd-kit/core": "^6.3.1", "@dnd-kit/modifiers": "^7.0.0", "@dnd-kit/sortable": "^8.0.0", "@dnd-kit/utilities": "^3.2.2", "@kubernetes/client-node": "^0.22.3", "@primer/octicons-react": "^19.13.0", "@react-aria/toast": "3.0.0-beta.18", "@react-stately/toast": "3.0.0-beta.7", "@remix-run/node": "^2.15.0", "@remix-run/react": "^2.15.0", "@shopify/lang-jsonc": "^1.0.0", "@types/react": "^19.0.1", "@types/react-dom": "^19.0.1", "@uiw/codemirror-theme-github": "^4.23.6", "@uiw/react-codemirror": "^4.23.6", "clsx": "^2.1.1", "dotenv": "^16.4.7", "isbot": "^5.1.17", "mime": "^4.0.4", "oauth4webapi": "^2.17.0", "react": "19.0.0", "react-aria-components": "^1.5.0", "react-codemirror-merge": "^4.23.6", "react-dom": "19.0.0", "react-error-boundary": "^4.1.2", "remix-utils": "^7.7.0", "tailwind-merge": "^2.5.5", "tailwindcss-react-aria-components": "^1.2.0", "undici": "^7.1.0", "usehooks-ts": "^3.1.0", "ws": "^8.18.0", "yaml": "^2.6.1", "zod": "^3.23.8" }, "devDependencies": { "@babel/preset-typescript": "^7.26.0", "@remix-run/dev": "^2.15.0", "@remix-run/route-config": "^2.15.0", "autoprefixer": "^10.4.20", "babel-plugin-react-compiler": "19.0.0-beta-df7b47d-20241124", "postcss": "^8.4.49", "tailwindcss": "^3.4.16", "tailwindcss-animate": "^1.0.7", "typescript": "^5.7.2", "vite": "^6.0.3", "vite-plugin-babel": "^1.3.0", "vite-tsconfig-paths": "^5.1.4" }, "engines": { "node": ">=20", "pnpm": ">=9 <10" }, "pnpm": { "patchedDependencies": { "@shopify/lang-jsonc@1.0.0": "patches/@shopify__lang-jsonc@1.0.0.patch" } } }