modern-dev-cli
Version:
A modern, comprehensive CLI toolkit for streamlining development workflows with Git operations, project scaffolding, and file management
41 lines (34 loc) • 1.18 kB
JavaScript
import fs from 'fs-extra';
import path from 'path';
import { logger } from '../utils/logger.js';
export async function createProject(projectName, template) {
try {
const projectPath = path.join(process.cwd(), projectName);
await fs.ensureDir(projectPath);
// Basic project structure
const structure = {
'src': {},
'tests': {},
'docs': {},
'.env.example': 'NODE_ENV=development\nPORT=3000',
'README.md': `# ${projectName}\n\nProject description goes here.`,
'.gitignore': 'node_modules\n.env\ndist\n.DS_Store'
};
for (const [name, content] of Object.entries(structure)) {
const itemPath = path.join(projectPath, name);
if (typeof content === 'object') {
await fs.ensureDir(itemPath);
} else {
await fs.writeFile(itemPath, content);
}
}
logger.success(`Project ${projectName} created successfully`);
} catch (error) {
logger.error('Failed to create project:', error);
throw error;
}
}
export async function setupDevServer(port = 3000) {
// Implementation for development server setup
logger.info(`Setting up development server on port ${port}`);
}