@schemifyjs/core
Version:
Core module of the SchemifyJS CLI. Provides reusable functions such as scaffolding, template handling, and general utilities.
25 lines (24 loc) • 996 B
JavaScript
import { scaffoldApplication } from '@schemifyjs/schematics';
// Definition of Version
import { buildSchemifyVersions } from '../../utils/options.util.js';
import { askNewProjectQuestions } from '../../libs/questions/prompts/new-project.prompts.js';
export async function runNewCommand(projectMetadata) {
// TODO : Add validation for projectMetadata
// validator.ProjectAlreadyExistsValidator.validate(projectMetadata.path!)
// validator.ProjectNotFoundValidator.validate(projectMetadata.path!)
// validator.NameValidator.validate(projectMetadata.name)
const answers = await askNewProjectQuestions();
const options = {
metadata: {
name: projectMetadata.name,
path: projectMetadata.path
},
microservice: {
name: answers.name
},
packageManager: answers.packageManager,
framework: answers.framework,
versions: buildSchemifyVersions()
};
await scaffoldApplication(options);
}