create-t3-app-fork
Version:
Create web application with the t3 stack
26 lines (23 loc) • 801 B
text/typescript
import type { PkgInstallerMap } from "../installers/index";
import type { PackageManager } from "../utils/getUserPkgManager";
import chalk from "chalk";
import ora from "ora";
import { logger } from "../utils/logger";
// This runs the installer for all the packages that the user has selected
export const installPackages = async (
projectDir: string,
pkgManager: PackageManager,
packages: PkgInstallerMap,
) => {
logger.info("Installing packages...");
for (const [name, opts] of Object.entries(packages)) {
if (opts.inUse) {
const spinner = ora(`Installing ${name}...`).start();
await opts.installer(projectDir, pkgManager, packages);
spinner.succeed(
chalk.green(`Successfully installed ${chalk.green.bold(name)}`),
);
}
}
logger.info("");
};