UNPKG

frontlook-react

Version:

92 lines (82 loc) 2.01 kB
#!/usr/bin/env node /*** * * ---------PLEASE DO NOT MODIFY THIS PACKAGE--------- * ***/ import chalk from "chalk"; import prompts from "prompts"; import degit from "degit"; import { PRM_CSS, PRM_LANG, PRM_LEVEL } from "./config"; const log = console.log; async function main() { const package_info = { lang: "js", level: "basic", framework: "mui", }; log(chalk.cyanBright("> Welcome to Frontlook-React 🚀")); log("@ Choose Your Preference:"); // Language pickup await prompts({ type: "select", name: "lang", message: "Pick a Language", choices: PRM_LANG.choice, initial: 1, hint: PRM_LANG.hints, }).then((prmLang) => { if (!prmLang.lang) { process.exit(0); } package_info["lang"] = prmLang.lang; }); await prompts({ type: "select", name: "level", message: "Choose project level", choices: PRM_LEVEL.choice, initial: 1, hint: PRM_LEVEL.hints, }).then((prmLevel) => { if (!prmLevel.level) { process.exit(0); } package_info["level"] = prmLevel.level; if (prmLevel.level === "bas") { prompts({ type: "select", name: "css", message: "Choose a css framework", choices: PRM_CSS.choice, initial: 1, }).then((prmCss) => { if (!prmCss.css) { process.exit(0); } package_info["framework"] = prmCss.css; generateBasic(package_info, "fro"); }); } }); } main(); async function generateBasic( pkg: { lang: string; framework: string }, projectName: string ) { if (pkg.lang === "js" && pkg.framework === "tailwind") { try { const emitter = degit( "https://github.com/Debangan202Ok/frontlook/packages/frontlook-react/templates/react-tailwind-js", { cache: false, force: true, } ); await emitter.clone(projectName); } catch (err) { console.error("Something went wrong! Please try again letter."); } } }