MCPcopy
hub / github.com/t3-oss/create-t3-app / createProject

Function createProject

src/helpers/createProject.ts:15–52  ·  view source on GitHub ↗
({
  projectName,
  packages,
  noInstall,
}: CreateProjectOptions)

Source from the content-addressed store, hash-verified

13}
14
15export const createProject = async ({
16 projectName,
17 packages,
18 noInstall,
19}: CreateProjectOptions) => {
20 const pkgManager = getUserPkgManager();
21 const projectDir = path.resolve(process.cwd(), projectName);
22 const runPkgManagerInstall = curryRunPkgManagerInstall({
23 projectDir,
24 pkgManager,
25 devMode: false,
26 noInstallMode: noInstall,
27 });
28
29 // Bootstraps the base Next.js application
30 await scaffoldProject({
31 projectName,
32 projectDir,
33 pkgManager,
34 noInstall,
35 runPkgManagerInstall,
36 });
37
38 // Install the selected packages
39 await installPackages({
40 projectDir,
41 pkgManager,
42 packages,
43 noInstall,
44 runPkgManagerInstall,
45 });
46
47 // TODO: Look into using handlebars or other templating engine to scaffold without needing to maintain multiple copies of the same file
48 await selectAppFile({ projectDir, packages });
49 await selectIndexFile({ projectDir, packages });
50
51 return projectDir;
52};

Callers 1

mainFunction · 0.85

Calls 6

getUserPkgManagerFunction · 0.85
scaffoldProjectFunction · 0.85
installPackagesFunction · 0.85
selectAppFileFunction · 0.85
selectIndexFileFunction · 0.85

Tested by

no test coverage detected