UNPKG

create-web3-dapp

Version:

CLI to create decentralized applications (dapps) using [Scaffold Alchemy](https://github.com/alchemyplatform/scaffold-alchemy).

50 lines (40 loc) 1.16 kB
import fs from "fs"; import path from "path"; import chalk from "chalk"; import clone from "git-clone/promise.js"; export async function setupProjectDirectory(projectName, inquirer) { const currentDir = process.cwd(); const projectDir = path.join(currentDir, projectName); if (fs.existsSync(projectDir)) { const { overwrite } = await inquirer.prompt([ { type: "confirm", name: "overwrite", message: `Directory ${projectName} already exists. Do you want to overwrite it?`, default: false, }, ]); if (!overwrite) { console.log(chalk.red("Operation cancelled")); process.exit(1); } fs.rmSync(projectDir, { recursive: true, force: true }); } fs.mkdirSync(projectDir, { recursive: true }); try { console.log(chalk.cyan("\nCloning scaffold-alchemy template...")); await clone( "https://github.com/alchemyplatform/scaffold-alchemy", projectDir, { shallow: true } ); fs.rmSync(path.join(projectDir, ".git"), { recursive: true, force: true, }); } catch (error) { console.error(chalk.red("\nFailed to clone template:"), error); process.exit(1); } return { projectDir, currentDir }; }