feat(build): POC - add Turborepo for cached package builds

This PR adds Turborepo as a build orchestration tool for the frontend
monorepo, providing intelligent caching for package builds.

Changes:
- Add turbo.json with task pipeline configuration
- Add turbo devDependency to root package.json
- Add packageManager field for Turborepo compatibility
- Add build/clean/type-check scripts to all packages and plugins
- Add .turbo to .gitignore

New scripts:
- npm run turbo:build - Build all packages with caching
- npm run turbo:build:force - Build without cache
- npm run turbo:type-check - Type check all packages
- npm run turbo:clean - Clean all build artifacts

Benefits:
- Cached builds: 5s → 314ms (16x faster) on unchanged packages
- Parallel builds across packages
- Only rebuilds what changed
- Local-only caching (no cloud dependencies)

Note: Lerna is preserved for versioning and publishing. Turborepo
handles build orchestration, not package publishing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Evan Rusackas
2026-02-10 10:25:06 -08:00
parent 7ec5f1d7ec
commit d0575ceb29
27 changed files with 271 additions and 2 deletions

View File

@@ -37,5 +37,10 @@
"@superset-ui/core": "*",
"@apache-superset/core": "*",
"react": "^17.0.2"
},
"scripts": {
"clean": "rm -rf lib esm tsconfig.tsbuildinfo",
"build": "npm run clean && npx tsc --build",
"type-check": "npx tsc --noEmit"
}
}