- Nx 22.7 monorepo (pnpm 11.1, TypeScript 5.9, Node 24) - apps/api: NestJS 11 (CJS conforme CODING-RULES.md PGD-DB-004) - apps/web: React 19 + Vite 8 (ESM) - libs/shared/api-interface: Zod contract base - Docker Compose dev: Postgres 18, Valkey 8, MinIO, Mailpit - WDS artifacts: - design-artifacts/A-Product-Brief/ (5 docs canônicos + 16 dialogs) - design-artifacts/B-Trigger-Map/ (hub + 4 personas + feature impact) - Stack canon: STACK.md v2.2 + CODING-RULES.md v2.0 + brand.md - AGENTS.md + README.md como entrada para devs/agentes Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
121 lines
2.9 KiB
JSON
121 lines
2.9 KiB
JSON
{
|
|
"$schema": "./node_modules/nx/schemas/nx-schema.json",
|
|
"namedInputs": {
|
|
"default": ["{projectRoot}/**/*", "sharedGlobals"],
|
|
"production": [
|
|
"default",
|
|
"!{projectRoot}/.eslintrc.json",
|
|
"!{projectRoot}/eslint.config.{js,cjs,mjs,ts}",
|
|
"!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)",
|
|
"!{projectRoot}/tsconfig.spec.json",
|
|
"!{projectRoot}/jest.config.[jt]s",
|
|
"!{projectRoot}/vitest.config.[jt]s",
|
|
"!{projectRoot}/src/test-setup.[jt]s",
|
|
"!{projectRoot}/test-setup.[jt]s",
|
|
"!{projectRoot}/eslint.config.mjs"
|
|
],
|
|
"sharedGlobals": ["{workspaceRoot}/tsconfig.base.json", "{workspaceRoot}/.prettierrc.json"]
|
|
},
|
|
"targetDefaults": {
|
|
"build": {
|
|
"cache": true,
|
|
"dependsOn": ["^build"],
|
|
"inputs": ["production", "^production"]
|
|
},
|
|
"test": {
|
|
"cache": true,
|
|
"inputs": ["default", "^production"]
|
|
},
|
|
"lint": {
|
|
"cache": true,
|
|
"inputs": [
|
|
"default",
|
|
"{workspaceRoot}/.eslintrc.json",
|
|
"{workspaceRoot}/eslint.config.js",
|
|
"{workspaceRoot}/tools/eslint-rules/**/*"
|
|
]
|
|
},
|
|
"e2e": {
|
|
"cache": true,
|
|
"inputs": ["default", "^production"]
|
|
},
|
|
"@nx/js:tsc": {
|
|
"cache": true,
|
|
"dependsOn": ["^build"],
|
|
"inputs": ["production", "^production"]
|
|
}
|
|
},
|
|
"defaultBase": "main",
|
|
"plugins": [
|
|
{
|
|
"plugin": "@nx/webpack/plugin",
|
|
"options": {
|
|
"buildTargetName": "build",
|
|
"serveTargetName": "serve",
|
|
"previewTargetName": "preview",
|
|
"buildDepsTargetName": "build-deps",
|
|
"watchDepsTargetName": "watch-deps",
|
|
"serveStaticTargetName": "serve-static"
|
|
}
|
|
},
|
|
{
|
|
"plugin": "@nx/eslint/plugin",
|
|
"options": {
|
|
"targetName": "lint"
|
|
}
|
|
},
|
|
{
|
|
"plugin": "@nx/jest/plugin",
|
|
"options": {
|
|
"targetName": "test"
|
|
},
|
|
"exclude": ["apps/api-e2e/**/*"]
|
|
},
|
|
{
|
|
"plugin": "@nx/vite/plugin",
|
|
"options": {
|
|
"buildTargetName": "build",
|
|
"testTargetName": "test",
|
|
"serveTargetName": "serve",
|
|
"devTargetName": "dev",
|
|
"previewTargetName": "preview",
|
|
"serveStaticTargetName": "serve-static",
|
|
"typecheckTargetName": "typecheck",
|
|
"buildDepsTargetName": "build-deps",
|
|
"watchDepsTargetName": "watch-deps"
|
|
}
|
|
},
|
|
{
|
|
"plugin": "@nx/vitest",
|
|
"options": {
|
|
"testTargetName": "test",
|
|
"ciTargetName": "test-ci",
|
|
"testMode": "watch"
|
|
}
|
|
},
|
|
{
|
|
"plugin": "@nx/playwright/plugin",
|
|
"options": {
|
|
"targetName": "e2e"
|
|
}
|
|
}
|
|
],
|
|
"generators": {
|
|
"@nx/react": {
|
|
"application": {
|
|
"babel": true,
|
|
"style": "css",
|
|
"linter": "eslint",
|
|
"bundler": "vite"
|
|
},
|
|
"component": {
|
|
"style": "css"
|
|
},
|
|
"library": {
|
|
"style": "css",
|
|
"linter": "eslint"
|
|
}
|
|
}
|
|
}
|
|
}
|