{ "name": "@zitadel/docs", "$schema": "../../node_modules/nx/schemas/project-schema.json", "targets": { "build": { "executor": "nx:run-commands", "options": { "command": "pnpm build", "cwd": "apps/docs" }, "outputs": [ "{projectRoot}/.next" ], "dependsOn": [ "^build", "check-links" ], "inputs": [ "default", "^production" ], "cache": true }, "dev": { "executor": "nx:run-commands", "options": { "command": "pnpm dev", "cwd": "apps/docs" }, "dependsOn": [ "generate" ] }, "start": { "executor": "nx:run-commands", "options": { "command": "pnpm start", "cwd": "apps/docs" }, "dependsOn": [ "build" ] }, "fetch-remote-content": { "executor": "nx:run-commands", "options": { "command": "pnpm fetch:remote-content", "cwd": "apps/docs" }, "outputs": [ "{projectRoot}/content/v*", "{projectRoot}/content/versions.json", "{projectRoot}/public/v*" ], "cache": true, "inputs": [ "default", { "runtime": "git ls-remote --tags --sort=-v:refname https://github.com/zitadel/zitadel.git | grep 'refs/tags/v[0-9]' | grep -v '\\^{}' | head -n 5" } ] }, "generate-proto-docs": { "executor": "nx:run-commands", "options": { "command": "bash -c 'GOOS=$(uname -s | tr \"[:upper:]\" \"[:lower:]\"); GOARCH=$(uname -m); GOARCH=${GOARCH/x86_64/amd64}; GOARCH=${GOARCH/aarch64/arm64}; PATH=\"${PWD}/../../.artifacts/bin/${GOOS}/${GOARCH}:$PATH\" pnpm generate:proto-docs'", "cwd": "apps/docs" }, "dependsOn": [ "fetch-remote-content", "install-proto-plugins" ], "outputs": [ "{projectRoot}/openapi" ], "cache": true, "inputs": [ "{projectRoot}/scripts/generate-proto-docs.mjs", "{projectRoot}/buf.gen.yaml", "{workspaceRoot}/proto/**/*", { "dependentTasksOutputFiles": "apps/docs/content/versions.json" }, { "dependentTasksOutputFiles": ".artifacts/bin/*/*/protoc-gen-connect-openapi" } ] }, "install-proto-plugins": { "executor": "nx:run-commands", "options": { "command": "bash ./apps/docs/scripts/install-proto-plugins.sh" }, "cache": true, "inputs": [ { "runtime": "uname -s" }, { "runtime": "uname -m" }, "{projectRoot}/scripts/install-proto-plugins.sh" ], "outputs": [ "{workspaceRoot}/.artifacts/bin/*/*/protoc-gen-connect-openapi" ] }, "generate-api-reference": { "executor": "nx:run-commands", "options": { "command": "pnpm generate:api-reference", "cwd": "apps/docs" }, "outputs": [ "{projectRoot}/content/reference/api", "{projectRoot}/content/v*/reference/api" ], "dependsOn": [ "generate-proto-docs" ], "cache": true, "inputs": [ "{projectRoot}/scripts/generate-api-reference.mts", { "dependentTasksOutputFiles": "apps/docs/openapi/**" } ] }, "fix-api-links": { "executor": "nx:run-commands", "options": { "command": "pnpm fix:api-links", "cwd": "apps/docs" }, "dependsOn": [ "generate-api-reference" ], "cache": false, "inputs": [ "default", { "dependentTasksOutputFiles": "apps/docs/content/reference/api/**" } ] }, "generate-index-pages": { "executor": "nx:run-commands", "options": { "command": "pnpm generate:index-pages", "cwd": "apps/docs" }, "outputs": [ "{projectRoot}/content/**/index.mdx" ], "dependsOn": [ "fetch-remote-content" ], "cache": true, "inputs": [ "default", "{projectRoot}/content/versions.json" ] }, "build-mdx-source": { "executor": "nx:run-commands", "options": { "command": "pnpm build:mdx-source", "cwd": "apps/docs" }, "outputs": [ "{projectRoot}/.source" ], "dependsOn": [ "fix-api-links", "generate-index-pages" ], "cache": true, "inputs": [ "default", { "dependentTasksOutputFiles": "apps/docs/content/**" } ] }, "generate": { "executor": "nx:run-commands", "options": { "command": "echo 'Generation complete'", "cwd": "apps/docs" }, "dependsOn": [ "build-mdx-source" ] }, "check-links": { "executor": "nx:run-commands", "options": { "command": "pnpm check:links", "cwd": "apps/docs" }, "dependsOn": [ "generate" ], "cache": true, "inputs": [ "default", "^production", "{workspaceRoot}/proto/**/*", "{projectRoot}/content/**/*", "{projectRoot}/public/**/*" ] }, "clean": { "executor": "nx:run-commands", "options": { "command": "pnpm clean", "cwd": "apps/docs" } }, "check-types": { "executor": "nx:run-commands", "options": { "command": "pnpm check:types", "cwd": "apps/docs" }, "dependsOn": [ "generate" ], "cache": true, "inputs": [ "default", "{projectRoot}/tsconfig.json", "{projectRoot}/**/*.{ts,tsx}", "{projectRoot}/.next/types/**/*.ts" ] }, "test": { "executor": "nx:run-commands", "options": { "command": "pnpm test:scripts", "cwd": "apps/docs" }, "dependsOn": [ "check-types", "check-links" ] }, "lint": { "executor": "nx:run-commands", "options": { "command": "pnpm lint", "cwd": "apps/docs" }, "dependsOn": [ "generate" ], "cache": true, "inputs": [ "default", "{workspaceRoot}/.eslintrc.json", "{projectRoot}/eslint.config.mjs", "{projectRoot}/content/**/*.{md,mdx}" ] } } }