diff --git a/.gitignore b/.gitignore index e024d19f..f08db3a9 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,8 @@ node_modules/ # build build/ .cache/ +.turbo/ +.worktrees/ devSyncReport.json # env diff --git a/.husky/pre-push b/.husky/pre-push index 466c0e02..b867ec27 100755 --- a/.husky/pre-push +++ b/.husky/pre-push @@ -1,6 +1 @@ -CI=1 pnpm install --frozen-lockfile -pnpm run check:ci -pnpm run typecheck -pnpm run typecheck:mcp-apps -pnpm run test -pnpm run build +pnpm check diff --git a/package.json b/package.json index ccf2bc21..97d5374a 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "diagnose": "node build/scripts/diagnostics.js", "typecheck": "tsc --noEmit --incremental --tsBuildInfoFile node_modules/.cache/tsc/src.tsbuildinfo", "typecheck:mcp-apps": "tsc -p mcp-apps/tsconfig.json --noEmit", - "check": "pnpm run typecheck && pnpm run typecheck:mcp-apps && biome check \"{src,mcp-apps}/**/*.{ts,tsx,js,json,md,css,html}\"", + "check": "turbo run lint typecheck typecheck:mcp-apps test build --output-logs=errors-only", "check:ci": "biome ci .", "verify": "pnpm run check:ci && pnpm run typecheck && pnpm run typecheck:mcp-apps && pnpm run test && pnpm run build", "fix": "biome check --write --no-errors-on-unmatched --files-ignore-unknown=true \"{src,mcp-apps}/**/*.{ts,tsx,js,json,md,css,html}\"", @@ -113,6 +113,7 @@ "supertest": "^7.2.2", "tsc-alias": "^1.8.17", "tsx": "^4.22.4", + "turbo": "2.11.8", "typescript": "^5.9.3", "vite": "^7.3.5", "vite-plugin-singlefile": "2.3.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6cad00a4..01379832 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -129,6 +129,9 @@ importers: tsx: specifier: ^4.22.4 version: 4.22.4 + turbo: + specifier: 2.11.8 + version: 2.11.8 typescript: specifier: ^5.9.3 version: 5.9.3 @@ -616,6 +619,36 @@ packages: '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + '@turbo/darwin-64@2.11.8': + resolution: {integrity: sha512-u+6s4C2hskRYx6MkW2uT7BCW6sESCL/+5bjHDDWUfQfQliCSJ7lAHAL6RQaw0an9WU6nJvwYgT786mEWul2kDw==} + cpu: [x64] + os: [darwin] + + '@turbo/darwin-arm64@2.11.8': + resolution: {integrity: sha512-y3qpPbclA4MuzAf/pSp6ivifp2mBCiLMHyf/bVq2eAJLjTnzev9JG5eqFhM0UvDGi0b3QKRNZi2HiavPnLbEbw==} + cpu: [arm64] + os: [darwin] + + '@turbo/linux-64@2.11.8': + resolution: {integrity: sha512-5Pm0icIkXPjk/HxhZD2AFMCyfH8RlITgtOksoSAdeLtXHAagzAqaAkdqG+6Ebd3eGPT1k3nJZWQD4wCLlIte5g==} + cpu: [x64] + os: [android, linux] + + '@turbo/linux-arm64@2.11.8': + resolution: {integrity: sha512-gh/Pcg7WVLS22SpoFqNxs/4y6feU/+Qa9nkCLTOHMTLjE3ADeqMjLFulq1LVCsWD2vjQccCnaZSUOLJ/lHzBRQ==} + cpu: [arm64] + os: [android, linux] + + '@turbo/windows-64@2.11.8': + resolution: {integrity: sha512-NnHtcWPE6PymlYsCKEuYditlY/nMeCEB3xyD4yc3cpqpxW7/4Xqdlqd5TpqvEpjS8CDazPHelGCQS/ghUIoZ6g==} + cpu: [x64] + os: [win32] + + '@turbo/windows-arm64@2.11.8': + resolution: {integrity: sha512-o8UyM/VlYCvW5Enfo2O37Pe11p3wmnEYtJrohXA2SyOlehmo5KyXpptPRKrXOMNfdmoYEulo6Nhj0tIv2UB0hA==} + cpu: [arm64] + os: [win32] + '@types/body-parser@1.19.6': resolution: {integrity: sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==} @@ -1825,6 +1858,10 @@ packages: engines: {node: '>=18.0.0'} hasBin: true + turbo@2.11.8: + resolution: {integrity: sha512-OwiFs6xNO5c2XtPgYCgCXuSlkur4b5T/OeAbOKzgsHh5mmJ9Sh7m041fz2JchrvyQv8hmae+1n07HfBmvDLZRA==} + hasBin: true + type-fest@2.19.0: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} @@ -2362,6 +2399,24 @@ snapshots: '@standard-schema/spec@1.1.0': {} + '@turbo/darwin-64@2.11.8': + optional: true + + '@turbo/darwin-arm64@2.11.8': + optional: true + + '@turbo/linux-64@2.11.8': + optional: true + + '@turbo/linux-arm64@2.11.8': + optional: true + + '@turbo/windows-64@2.11.8': + optional: true + + '@turbo/windows-arm64@2.11.8': + optional: true + '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 @@ -3630,6 +3685,15 @@ snapshots: optionalDependencies: fsevents: 2.3.3 + turbo@2.11.8: + optionalDependencies: + '@turbo/darwin-64': 2.11.8 + '@turbo/darwin-arm64': 2.11.8 + '@turbo/linux-64': 2.11.8 + '@turbo/linux-arm64': 2.11.8 + '@turbo/windows-64': 2.11.8 + '@turbo/windows-arm64': 2.11.8 + type-fest@2.19.0: {} type-fest@4.41.0: {} diff --git a/turbo.json b/turbo.json new file mode 100644 index 00000000..9052f88e --- /dev/null +++ b/turbo.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://turborepo.dev/schema.json", + "tasks": { + "lint": {}, + "typecheck": {}, + "typecheck:mcp-apps": {}, + "test": {}, + "build": { "outputs": ["build/**"] } + } +}