feat: add optional ui framework selection
This commit is contained in:
@@ -5,8 +5,26 @@ const { deps } = require('./deps');
|
||||
function installDependencies(userInput, options) {
|
||||
const spinner = ora('🔄 Installing dependencies...').start();
|
||||
try {
|
||||
if (userInput.useAntd) {
|
||||
deps.push('antd');
|
||||
switch (userInput.uiFramework) {
|
||||
case 'Ant Design':
|
||||
deps.push('antd');
|
||||
break;
|
||||
case 'Material UI':
|
||||
deps.push('@mui/material');
|
||||
deps.push('@emotion/react');
|
||||
deps.push('@emotion/styled');
|
||||
break;
|
||||
case 'Chakra UI':
|
||||
deps.push('@chakra-ui/react');
|
||||
deps.push('@emotion/react');
|
||||
deps.push('@emotion/styled');
|
||||
deps.push('framer-motion');
|
||||
break;
|
||||
case 'Radix UI':
|
||||
deps.push('@radix-ui/react-icons');
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
if (userInput.useRedux) {
|
||||
deps.push('@reduxjs/toolkit');
|
||||
|
||||
@@ -3,7 +3,12 @@ const inquirer = require('inquirer');
|
||||
async function askProjectDetails() {
|
||||
return inquirer.prompt([
|
||||
{ type: 'confirm', name: 'useHusky', message: 'Install Husky?' },
|
||||
{ type: 'confirm', name: 'useAntd', message: 'Install Antd?' },
|
||||
{
|
||||
type: 'list',
|
||||
name: 'uiFramework',
|
||||
message: 'Choose a UI framework:',
|
||||
choices: ['Ant Design', 'Material UI', 'Chakra UI', 'Radix UI', 'None'],
|
||||
},
|
||||
{ type: 'confirm', name: 'useRedux', message: 'Use Redux?' },
|
||||
|
||||
{ type: 'confirm', name: 'useModuleFederation', message: 'Use Module Federation Plugin?' },
|
||||
|
||||
Reference in New Issue
Block a user