UNPKG

modern-dev-cli

Version:

A modern, comprehensive CLI toolkit for streamlining development workflows with Git operations, project scaffolding, and file management

64 lines (55 loc) 1.63 kB
#!/usr/bin/env node import { program } from 'commander'; import { gitCommands, projectCommands, fileCommands } from '../src/index.js'; import { logger } from '../src/utils/logger.js'; program .version('1.0.0') .description('Developer Toolkit CLI'); // Git commands program .command('git-status') .description('Show git repository status') .action(async () => { try { const status = await gitCommands.getStatus(); console.log(status); } catch (error) { logger.error('Failed to get git status'); } }); program .command('quick-commit <message>') .description('Quick commit all changes') .action(async (message) => { try { await gitCommands.quickCommit(message); } catch (error) { logger.error('Failed to commit changes'); } }); // Project commands program .command('create-project <name>') .description('Create a new project') .option('-t, --template <template>', 'Project template to use') .action(async (name, options) => { try { await projectCommands.createProject(name, options.template); } catch (error) { logger.error('Failed to create project'); } }); // File commands program .command('rename <directory>') .description('Bulk rename files') .requiredOption('-s, --search <pattern>', 'Search pattern') .requiredOption('-r, --replace <text>', 'Replace text') .action(async (directory, options) => { try { await fileCommands.bulkRename(directory, options.search, options.replace); } catch (error) { logger.error('Failed to rename files'); } }); program.parse(process.argv);