@eve-tools/cli
Version:
Everest cli to speed up project start-up and standardized frontend , backend architecture
27 lines (26 loc) • 883 B
JavaScript
import inquirer from "inquirer";
import prompt from "../constants/prompt-series.js";
const initialPrompt = {
name: "",
type: "",
architecture: "",
language: "",
framework: "nextjs",
};
export const generatePromptSeries = async () => {
const projectMeta = { ...initialPrompt };
let projectType = "";
const languageMapToProjectType = new Set(["node", "python", "java"]);
for (const [, questionSet] of Object.entries(prompt)) {
const questions = Array.isArray(questionSet)
? questionSet
: questionSet[projectType];
const answers = await inquirer.prompt(questions);
const { type, language } = answers;
projectType = languageMapToProjectType.has(language)
? language
: projectType || type;
Object.assign(projectMeta, answers);
}
return { projectMeta };
};