{ "name": "hostforge", "version": "0.1.0", "private": true, "type": "module", "scripts": { "build:next": "next build", "build:server-tsc": "tsc -p tsconfig.server.json && tscpaths -p tsconfig.server.json -s ./src -o ./dist/", "build:server": "tsup", "clean": "rm -rf .next dist", "db:push": "drizzle-kit push", "db:generate": "drizzle-kit generate", "dev": "tsup --watch --onSuccess \"npm run dev:run\" --clean", "dev:run": "node --enable-source-maps dist/server.js", "lint": "next lint", "start": "node -r tsconfig", "fetch-compose-types": "curl -s https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json | json2ts > src/server/docker/compose.d.ts", "fetch-docker-types": "openapi-typescript https://docs.docker.com/reference/engine/v1.43.yaml -o ./src/server/docker/types.d.ts" }, "dependencies": { "@hookform/resolvers": "^3.3.4", "@mantine/form": "^7.4.0", "@nicktomlin/codemirror-lang-yaml-lite": "^0.0.3", "@radix-ui/react-checkbox": "^1.0.4", "@radix-ui/react-dialog": "^1.0.5", "@radix-ui/react-dropdown-menu": "^2.0.6", "@radix-ui/react-icons": "^1.3.0", "@radix-ui/react-label": "^2.0.2", "@radix-ui/react-navigation-menu": "^1.1.4", "@radix-ui/react-radio-group": "^1.1.3", "@radix-ui/react-select": "^2.0.0", "@radix-ui/react-separator": "^1.0.3", "@radix-ui/react-slot": "^1.0.2", "@radix-ui/react-switch": "^1.0.3", "@radix-ui/react-tabs": "^1.0.4", "@t3-oss/env-nextjs": "^0.7.1", "@tanstack/react-query": "^5.17.1", "@tanstack/react-table": "^8.11.3", "@trpc/client": "11.0.0-next-alpha.150", "@trpc/react-query": "11.0.0-next-alpha.150", "@trpc/server": "11.0.0-next-alpha.150", "@uiw/codemirror-extensions-langs": "^4.21.21", "@uiw/react-codemirror": "^4.21.21", "ansi-to-react": "^6.1.6", "argon2": "^0.31.2", "better-sqlite3": "^9.2.2", "bufferutil": "^4.0.8", "chalk": "^5.3.0", "class-variance-authority": "^0.7.0", "clsx": "^2.1.0", "common-tags": "^1.8.2", "cookie": "^0.6.0", "datastructures-js": "^13.0.0", "date-fns": "^3.0.6", "deterministic-object-hash": "^2.0.2", "docker-cli-js": "^2.10.0", "docker-modem": "^5.0.3", "dockerode": "^4.0.2", "dotenv": "^16.3.1", "drizzle-orm": "^0.30.10", "drizzle-zod": "^0.5.1", "extensionless": "^1.9.6", "framer-motion": "^11.0.3", "ipaddr.js": "^2.1.0", "json-diff-ts": "^4.0.1", "lucide-react": "^0.298.0", "next": "14.0.4", "next-nprogress-bar": "^2.1.2", "next-query-params": "^5.0.0", "next-themes": "^0.2.1", "node-os-utils": "^1.3.7", "pretty-bytes": "^6.1.1", "react": "18.2.0", "react-dom": "18.2.0", "react-hook-form": "^7.49.2", "react-icons": "^4.12.0", "react-simple-code-editor": "^0.13.1", "recharts": "^2.10.3", "sonner": "^1.3.1", "superjson": "^2.2.1", "tailwind-merge": "^2.2.0", "tailwindcss-animate": "^1.0.7", "trpc-openapi": "^1.2.0", "ts-permissions": "^1.0.0", "ua-parser-js": "^1.0.37", "use-debounce": "^10.0.0", "use-query-params": "^2.2.1", "uuidv7": "^0.6.3", "vaul": "^0.9.1", "winston": "^3.11.0", "ws": "^8.16.0", "zod": "^3.22.4" }, "devDependencies": { "@types/better-sqlite3": "^7.6.8", "@types/common-tags": "^1.8.4", "@types/cookie": "^0.6.0", "@types/docker-modem": "^3.0.6", "@types/dockerode": "^3.3.23", "@types/eslint": "^8.56.1", "@types/node": "^20.10.6", "@types/node-os-utils": "^1.3.4", "@types/react": "^18.2.46", "@types/react-dom": "^18.2.18", "@types/ua-parser-js": "^0.7.39", "@types/ws": "^8.5.10", "@typescript-eslint/eslint-plugin": "^6.17.0", "@typescript-eslint/parser": "^6.17.0", "autoprefixer": "^10.4.16", "drizzle-kit": "^0.21.2", "eslint": "^8.56.0", "eslint-config-next": "^14.0.4", "json-schema-to-typescript": "^13.1.1", "npm-run-all": "^4.1.5", "openapi-typescript": "^5.4.1", "postcss": "^8.4.32", "prettier": "^3.1.1", "prettier-plugin-tailwindcss": "^0.5.10", "tailwindcss": "^3.4.0", "tscpaths": "^0.0.9", "tsup": "^8.0.1", "typed-emitter": "^2.1.0", "typescript": "^5.3.3" }, "ct3aMetadata": { "initVersion": "7.20.3-beta.2e8399f" } }