akshit-sharma-cli
Version:
Personal CLI tool showcasing Akshit Sharma's AI/ML engineering profile
282 lines (255 loc) • 10.4 kB
JavaScript
#!/usr/bin/env node
import { Command } from 'commander';
import chalk from 'chalk';
import boxen from 'boxen';
import gradient from 'gradient-string';
import { AkshitChatbot } from './chatbot.js';
const program = new Command();
program
.name('akshit-sharma-cli')
.description('Personal CLI tool showcasing Akshit Sharma\'s AI/ML engineering profile')
.version('1.0.2');
program
.option('--info', 'Display complete profile information')
.option('--skills', 'Show technical skills and expertise')
.option('--projects', 'Display key projects')
.option('--experience', 'Show work experience')
.option('--contact', 'Display contact information')
.option('--chatbot', 'Start interactive AI chatbot powered by Gemma model')
.action(async (options) => {
if (options.chatbot) {
const chatbot = new AkshitChatbot();
await chatbot.startChat();
} else if (options.info) {
displayCompleteProfile();
} else if (options.skills) {
displaySkills();
} else if (options.projects) {
displayProjects();
} else if (options.experience) {
displayExperience();
} else if (options.contact) {
displayContact();
} else {
displayWelcome();
}
});
function displayWelcome() {
const title = gradient.pastel.multiline(`
╔══════════════════════════════════════════════════╗
║ 🚀 AKSHIT SHARMA CLI ║
║ AI/ML Engineering Portfolio ║
╚══════════════════════════════════════════════════╝`);
console.log('\n' + title);
console.log(boxen(
chalk.white.bold('Available Commands:\n\n') +
chalk.cyan(' --info ') + chalk.white('Complete profile overview\n') +
chalk.cyan(' --skills ') + chalk.white('Technical skills & expertise\n') +
chalk.cyan(' --projects ') + chalk.white('Key projects & achievements\n') +
chalk.cyan(' --experience') + chalk.white('Work experience\n') +
chalk.cyan(' --contact ') + chalk.white('Contact information\n') +
chalk.magenta(' --chatbot ') + chalk.white('🤖 Interactive AI assistant (Gemma AI)\n\n') +
chalk.yellow.italic('💡 Try: npx akshit-sharma-cli --chatbot'),
{
padding: 1,
margin: 1,
borderStyle: 'round',
borderColor: 'cyan',
backgroundColor: '#1a1a1a'
}
));
}
function displayCompleteProfile() {
const header = gradient.rainbow.multiline(`
╔══════════════════════════════════════════════════╗
║ AKSHIT SHARMA ║
║ AI/ML Engineering Student ║
╚══════════════════════════════════════════════════╝`);
console.log('\n' + header);
// Education Section
console.log(boxen(
chalk.green.bold('🎓 EDUCATION\n\n') +
chalk.white('• ') + chalk.cyan('B.Tech Computer Science') + chalk.gray(' (AI & Data Science Specialization)\n') +
chalk.white('• ') + chalk.cyan('Maharaja Agrasen Institute of Technology\n') +
chalk.white('• ') + chalk.cyan('CGPA: ') + chalk.yellow.bold('8.96/10') + chalk.gray(' (2022-2026)'),
{
padding: 1,
margin: { top: 1, bottom: 1, left: 2, right: 2 },
borderStyle: 'round',
borderColor: 'green'
}
));
// Core Expertise
console.log(boxen(
chalk.blue.bold('🔧 CORE EXPERTISE\n\n') +
chalk.white('• ') + chalk.magenta('Machine Learning & Deep Learning\n') +
chalk.white('• ') + chalk.magenta('Natural Language Processing\n') +
chalk.white('• ') + chalk.magenta('Computer Vision & TensorFlow\n') +
chalk.white('• ') + chalk.magenta('Cloud Infrastructure (GCP, AWS)'),
{
padding: 1,
margin: { top: 0, bottom: 1, left: 2, right: 2 },
borderStyle: 'round',
borderColor: 'blue'
}
));
// Achievements
console.log(boxen(
chalk.red.bold('🏆 RECENT ACHIEVEMENTS\n\n') +
chalk.white('• ') + chalk.yellow.bold('Winner') + chalk.white(' - AceCloud X RTDS Hackathon \'25'),
{
padding: 1,
margin: { top: 0, bottom: 1, left: 2, right: 2 },
borderStyle: 'round',
borderColor: 'red'
}
));
displayContact();
}
function displaySkills() {
const header = gradient.mind.multiline('🛠️ TECHNICAL SKILLS');
console.log('\n' + boxen(header, { padding: 1, borderStyle: 'bold', borderColor: 'blue' }));
const skillsData = [
{
category: '💻 Programming Languages',
skills: ['Python (Advanced)', 'C/C++ (Proficient)', 'Java (Proficient)', 'JavaScript (Intermediate)', 'SQL (Proficient)'],
color: 'cyan'
},
{
category: '🤖 AI/ML Technologies',
skills: ['TensorFlow & PyTorch', 'BERT & Transformers', 'Computer Vision & NLP', 'RAG (Retrieval-Augmented Generation)', 'Llama 3.1 Fine-tuning'],
color: 'green'
},
{
category: '☁️ Cloud & Infrastructure',
skills: ['Google Cloud Platform', 'AWS Services', 'OpenStack SDK', 'Docker & Kubernetes', 'Linux/Unix Systems'],
color: 'blue'
},
{
category: '🔨 Development Tools',
skills: ['Git Version Control', 'MongoDB Database', 'Flask Web Framework', 'React.js Frontend', 'WebRTC Technologies'],
color: 'magenta'
}
];
skillsData.forEach(section => {
const skillsList = section.skills.map(skill => ` • ${skill}`).join('\n');
console.log(boxen(
chalk[section.color].bold(section.category + '\n\n') + chalk.white(skillsList),
{
padding: 1,
margin: { top: 1, left: 2, right: 2 },
borderStyle: 'round',
borderColor: section.color
}
));
});
}
function displayProjects() {
const header = gradient.fruit.multiline('🚀 KEY PROJECTS');
console.log('\n' + boxen(header, { padding: 1, borderStyle: 'bold', borderColor: 'green' }));
const projects = [
{
title: '1. OpenStack Cloud Management System',
url: 'https://github.com/akshit7093/VM_manager_AgenticAi',
description: 'Natural language interface for cloud infrastructure',
details: 'AI agent powered by Google\'s Gemini model',
metrics: '87% accuracy with 300ms response time',
tech: 'Python, OpenStack SDK, Gemini, Flask, Docker'
},
{
title: '2. SignEase - Accessible Video Platform',
url: 'https://github.com/akshit7093/Sign-language-translator.git',
description: 'Video chat platform with ASL detection',
details: '89% accuracy using TensorFlow & MediaPipe',
metrics: 'Optimized latency from 500ms to 180ms',
tech: 'Python, TensorFlow, WebRTC, React'
},
{
title: '3. Universal Website Chatbot',
url: 'https://github.com/akshit7093/Chatbot-for-websites',
description: 'Fine-tuned Llama 3.1 for multi-domain integration',
details: 'Improved accuracy from 50% to 90%',
metrics: 'Deployed across 4 live websites',
tech: 'Llama 3.1, Python, Flask, MongoDB'
}
];
projects.forEach(project => {
console.log(boxen(
chalk.cyan.bold(project.title + '\n') +
chalk.gray('🔗 ' + project.url + '\n\n') +
chalk.white('• ' + project.description + '\n') +
chalk.white('• ' + project.details + '\n') +
chalk.white('• ') + chalk.yellow(project.metrics) + '\n' +
chalk.white('• ') + chalk.gray('Tech: ') + chalk.green(project.tech),
{
padding: 1,
margin: { top: 1, left: 2, right: 2 },
borderStyle: 'round',
borderColor: 'cyan'
}
));
});
}
function displayExperience() {
const header = gradient.atlas.multiline('💼 PROFESSIONAL EXPERIENCE');
console.log('\n' + boxen(header, { padding: 1, borderStyle: 'bold', borderColor: 'magenta' }));
const experiences = [
{
role: '🔬 Machine Learning Intern',
company: 'CodSoft',
period: 'August 2024 – September 2024',
url: 'https://github.com/akshit7093/CODSOFT',
achievements: [
'Developed movie recommendation system (92% accuracy)',
'Improved fraud detection (reduced false positives from 20% to 5%)',
'Built SMS spam detection model (95% accuracy)'
]
},
{
role: '🔬 Machine Learning Intern',
company: 'Cantilever.in',
period: 'July 2024 – August 2024',
url: 'https://github.com/akshit7093/CANTILEVER',
achievements: [
'Fine-tuned BERT for sentiment analysis (88% accuracy)',
'Enhanced fraud detection with 10% recall improvement',
'Implemented distributed training techniques'
]
}
];
experiences.forEach(exp => {
const achievementsList = exp.achievements.map(achievement => ` • ${achievement}`).join('\n');
console.log(boxen(
chalk.yellow.bold(exp.role + ' | ' + exp.company + '\n') +
chalk.gray('📅 ' + exp.period + '\n') +
chalk.gray('🔗 ' + exp.url + '\n\n') +
chalk.green(achievementsList),
{
padding: 1,
margin: { top: 1, left: 2, right: 2 },
borderStyle: 'round',
borderColor: 'yellow'
}
));
});
}
function displayContact() {
const contactInfo = `📧 Email: akshitsharma7096@gmail.com
📱 Phone: +91 8810248097
🔗 GitHub: https://github.com/akshit7093
💼 LinkedIn: https://linkedin.com/in/akshitsharma
⚡ LeetCode: https://leetcode.com/akshitsharma
🏆 CodeForces: https://codeforces.com/profile/akshitsharma
💡 Ready to collaborate on AI/ML projects!`;
console.log(boxen(
chalk.red.bold('📧 CONTACT INFORMATION\n\n') + chalk.cyan(contactInfo),
{
padding: 1,
margin: { top: 1, left: 2, right: 2 },
borderStyle: 'double',
borderColor: 'red',
backgroundColor: '#0f0f0f'
}
));
}
program.parse(process.argv);