myaidev-method
Version:
Comprehensive development framework with SPARC methodology for AI-assisted software development, multi-platform publishing (WordPress, PayloadCMS, Astro, Docusaurus, Mintlify), and Coolify deployment
101 lines (83 loc) • 7.42 kB
JavaScript
import chalk from 'chalk';
/**
* ASCII Banner for MyAIDev Method with orange to grey gradient
*/
export function getASCIIBanner() {
// Orange to grey gradient colors
const orange = chalk.hex('#FFA500');
const orangeLight = chalk.hex('#FFB84D');
const greyOrange = chalk.hex('#CC9966');
const greyLight = chalk.hex('#999999');
const grey = chalk.hex('#808080');
const greyDark = chalk.hex('#666666');
const banner = `
${orange('███╗ ███╗')}${orangeLight('██╗ ██╗')}${greyOrange(' █████╗ ')}${greyLight('██╗')}${grey('██████╗ ')}${greyDark('███████╗')}${grey('██╗ ██╗')}
${orange('████╗ ████║')}${orangeLight('╚██╗ ██╔╝')}${greyOrange('██╔══██╗')}${greyLight('██║')}${grey('██╔══██╗')}${greyDark('██╔════╝')}${grey('██║ ██║')}
${orange('██╔████╔██║')}${orangeLight(' ╚████╔╝ ')}${greyOrange('███████║')}${greyLight('██║')}${grey('██║ ██║')}${greyDark('█████╗ ')}${grey('██║ ██║')}
${orange('██║╚██╔╝██║')}${orangeLight(' ╚██╔╝ ')}${greyOrange('██╔══██║')}${greyLight('██║')}${grey('██║ ██║')}${greyDark('██╔══╝ ')}${grey('╚██╗ ██╔╝')}
${orange('██║ ╚═╝ ██║')}${orangeLight(' ██║ ')}${greyOrange('██║ ██║')}${greyLight('██║')}${grey('██████╔╝')}${greyDark('███████╗')}${grey(' ╚████╔╝ ')}
${orange('╚═╝ ╚═╝')}${orangeLight(' ╚═╝ ')}${greyOrange('╚═╝ ╚═╝')}${greyLight('╚═╝')}${grey('╚═════╝ ')}${greyDark('╚══════╝')}${grey(' ╚═══╝ ')}
${orange(' ███╗ ███╗')}${orangeLight('███████╗')}${greyOrange('████████╗')}${greyLight('██╗ ██╗')}${grey('ย╗ ██████╗')} ${greyDark('██████╗ ')}
${orange(' ████╗ ████║')}${orangeLight('██╔════╝')}${greyOrange('╚══██╔══╝')}${greyLight('██║ ██║')}${grey('╠╝ ██╔══██╗')}${greyDark('██╔══██╗')}
${orange(' ██╔████╔██║')}${orangeLight('█████╗ ')}${greyOrange(' ██║ ')}${greyLight('███████║')}${grey(' ██║ ██║')}${greyDark('██║ ██║')}
${orange(' ██║╚██╔╝██║')}${orangeLight('██╔══╝ ')}${greyOrange(' ██║ ')}${greyLight('██╔══██║')}${grey(' ██║ ██║')}${greyDark('██║ ██║')}
${orange(' ██║ ╚═╝ ██║')}${orangeLight('███████╗')}${greyOrange(' ██║ ')}${greyLight('██║ ██║')}${grey('╗ ██████╔╝')}${greyDark('██████╔╝')}
${orange(' ╚═╝ ╚═╝')}${orangeLight('╚══════╝')}${greyOrange(' ╚═╝ ')}${greyLight('╚═╝ ╚═╝')}${grey('╩ ╚═════╝ ')}${greyDark('╚═════╝ ')}
`;
return banner;
}
/**
* Get SPARC methodology breakdown with emoji and colors
*/
export function getSPARCBreakdown() {
const orange = chalk.hex('#FFA500');
const blue = chalk.hex('#4A90E2');
const green = chalk.hex('#50C878');
const purple = chalk.hex('#9B59B6');
const red = chalk.hex('#E74C3C');
return `
${chalk.bold.hex('#FFA500')('╔══════════════════════════════════════════════════════════════════════════╗')}
${chalk.bold.hex('#FFA500')('║')} ${chalk.bold.white('SPARC Methodology - Systematic Software Development Framework')} ${chalk.bold.hex('#FFA500')('║')}
${chalk.bold.hex('#FFA500')('╚══════════════════════════════════════════════════════════════════════════╝')}
${orange.bold('S')} ${chalk.white('│')} ${blue('📋 Specification')}
${chalk.dim('Define requirements and system boundaries')}
${chalk.dim('→ Clear goals, constraints, and success criteria')}
${orange.bold('P')} ${chalk.white('│')} ${green('🔄 Pseudocode')}
${chalk.dim('Plan implementation approach')}
${chalk.dim('→ Algorithm design and logic flow')}
${orange.bold('A')} ${chalk.white('│')} ${purple('🏗️ Architecture')}
${chalk.dim('Design system structure, APIs, and data models')}
${chalk.dim('→ Technical decisions and infrastructure planning')}
${orange.bold('R')} ${chalk.white('│')} ${red('⚙️ Refinement')}
${chalk.dim('Implement, test, and review code quality')}
${chalk.dim('→ SOLID principles, Clean Code, comprehensive testing')}
${orange.bold('C')} ${chalk.white('│')} ${chalk.cyan('✅ Completion')}
${chalk.dim('Document and deliver production-ready software')}
${chalk.dim('→ API docs, user guides, deployment automation')}
${chalk.bold.hex('#808080')('───────────────────────────────────────────────────────────────────────────')}
${chalk.dim('Quality Standards')}: ${chalk.green('SOLID')} • ${chalk.blue('DRY')} • ${chalk.yellow('KISS')} • ${chalk.magenta('YAGNI')} • ${chalk.red('OWASP Top 10')} • ${chalk.cyan('80%+ Coverage')}
${chalk.bold.hex('#808080')('───────────────────────────────────────────────────────────────────────────')}
`;
}
/**
* Get initialization success message with instructions
*/
export function getInitSuccessMessage(cliType) {
const commands = cliType === 'claude'
? ' • View README: Press Ctrl+Shift+P → "Toggle Documentation"\n • Run workflow: /myai-sparc-workflow "Build your feature"'
: cliType === 'gemini'
? ' • View commands: ls .gemini/commands/\n • Run workflow: /myai-sparc-workflow "Build your feature"'
: ' • View commands: ls .opencode/commands/\n • Run workflow: /myai-sparc-workflow "Build your feature"';
return `
${chalk.green.bold('✨ Installation Complete!')}
${chalk.cyan.bold('📁 Project Structure:')}
${cliType === 'claude' ? '.claude/' : cliType === 'gemini' ? '.gemini/' : '.opencode/'}
├─ commands/ ${chalk.dim('# All slash commands')}
${cliType === 'claude' ? '├─ agents/ # Agent definitions\n ├─ mcp/ # MCP server configs\n ' : ''}└─ README.md ${chalk.dim('# Configuration guide')}
${chalk.cyan.bold('🚀 Next Steps:')}
${commands}
• Configure platforms: /myai-configure
• Read full guide: cat USER_GUIDE.md
${chalk.hex('#FFA500').bold('🎯 Ready to build with the SPARC methodology!')}
`;
}