diff --git a/.changeset/slimy-pots-grab.md b/.changeset/slimy-pots-grab.md new file mode 100644 index 0000000..b1b09b3 --- /dev/null +++ b/.changeset/slimy-pots-grab.md @@ -0,0 +1,5 @@ +--- +"create-better-t-stack": patch +--- + +fix pnpm workspace diff --git a/apps/cli/src/helpers/project-config.ts b/apps/cli/src/helpers/project-config.ts index c1592a7..2f68673 100644 --- a/apps/cli/src/helpers/project-config.ts +++ b/apps/cli/src/helpers/project-config.ts @@ -1,7 +1,8 @@ import path from "node:path"; import { $ } from "execa"; import fs from "fs-extra"; -import type { ProjectConfig, ProjectDatabase, ProjectOrm } from "../types"; +import { PKG_ROOT } from "../constants"; +import type { ProjectConfig } from "../types"; export async function updatePackageConfigurations( projectDir: string, @@ -30,6 +31,18 @@ async function updateRootPackageJson( } await fs.writeJson(rootPackageJsonPath, packageJson, { spaces: 2 }); + + if (options.packageManager === "pnpm") { + const pnpmWorkspaceTemplatePath = path.join( + PKG_ROOT, + "template/with-pnpm/pnpm-workspace.yaml", + ); + const targetWorkspacePath = path.join(projectDir, "pnpm-workspace.yaml"); + + if (await fs.pathExists(pnpmWorkspaceTemplatePath)) { + await fs.copy(pnpmWorkspaceTemplatePath, targetWorkspacePath); + } + } } } diff --git a/apps/cli/template/with-pnpm/pnpm-workspace.yaml b/apps/cli/template/with-pnpm/pnpm-workspace.yaml new file mode 100644 index 0000000..dee51e9 --- /dev/null +++ b/apps/cli/template/with-pnpm/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - "packages/*"