Package Exports
- shubham0401
- shubham0401/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (shubham0401) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
CLI Resume — Interactive Terminal Portfolio
A hacker-themed, interactive CLI resume for Shubham Malik — navigate your portfolio like you're decrypting a secure shell session.
Overview
CLI Resume is a command-line portfolio built with Node.js. Instead of a static PDF, recruiters and developers get a cinematic terminal experience:
- Matrix-style boot sequence with progress bars
- Centered ASCII banner and session HUD
- Interactive menu-driven resume sections
- Color-coded output (green terminal + cyan highlights)
- Cinematic shutdown sequence on exit
- Clickable contact links (GitHub, LinkedIn, WhatsApp, Email)
Perfect for developers who want their resume to stand out in terminals, GitHub READMEs, and dev portfolios.
Preview
root@resume-node:~$ sudo ./unlock_resume.sh --force
[NET] Tunneling secure shell to resume-node...
[AUTH] Bypassing firewall... handshake OK
[SCAN] [======================] [100%][OK]
[DECRYPT] [======================] [100%][OK]
███████╗██╗ ██╗██╗ ██╗██████╗ ██╗ ██╗ █████╗ ███╗ ███╗
... SHUBHAM MALIK (block ASCII banner) ...
╭────────────────────────────────────────────────────╮
│ SESSION :: resume-cli │
│ IDENTITY SHUBHAM MALIK │
│ ROLE Full-Stack AI Developer │
│ NODE resume-node@local │
│ LOCATION Sonipat, IN │
│ EDU B.Tech CSE · Class of 2026 │
│ STATUS ONLINE │
╰────────────────────────────────────────────────────╯
[SYS] Select module to decrypt:
❯ About Me
Education
Professional Experience
Tech Skills
Projects
...Features
Boot & Welcome
| Feature | Description |
|---|---|
| Boot sequence | Simulated shell unlock with typed logs |
| Progress bars | [SCAN] and [DECRYPT] with [100%][OK] |
| Matrix drizzle | Random binary/katakana rain effect |
| ASCII banner | Centered block font name banner |
| Session HUD | Identity, role, node, location, education, status |
| Role scan | Cycles taglines → locks on Full-Stack AI Developer |
| Access granted | Centered panel when shell is ready |
Resume Navigation
| Feature | Description |
|---|---|
| Interactive menu | Arrow keys + Enter via inquirer |
| 9 sections | About, Education, Experience, Skills, Projects, Achievements, Certifications, Interests, Contact |
| Section headers | [>] DUMP :: SECTION_NAME terminal style |
| Back / Exit | Loop menu or trigger shutdown |
Styling & Colors
| Content | Color |
|---|---|
| Experience headers (dates, role, company) | Green |
Experience bullets (→) |
Cyan |
Project titles [Name] |
Bright green |
| Project descriptions | Cyan |
Tech skill labels (Languages:) |
Bright green |
| Tech list (TypeScript, React…) | Cyan |
| About, Education, Achievements, etc. | Cyan |
| Contact labels | Green · links cyan |
Exit Sequence
| Step | Description |
|---|---|
| Shutdown header | Red bordered panel |
| 5 teardown tasks | SYS, NET, SEC, LOG, MEM with progress bars |
| Farewell message | Typewriter transmission |
| Matrix wipe | Trace purge animation |
| Glitch flash | SIGNAL LOST → CONNECTION TERMINATED |
| Final panel | Red bordered goodbye box |
Contact Links
- GitHub, LinkedIn, LeetCode, Portfolio — clickable URLs
- Email —
mailto:link - WhatsApp —
wa.medeep link
Quick Start
Prerequisites
- Node.js v14+ (v18+ recommended)
- npm or yarn
- A terminal that supports ANSI colors (macOS Terminal, iTerm2, Windows Terminal, VS Code/Cursor integrated terminal)
Local setup
# Clone the repo
git clone https://github.com/subhm2004/CLI-Resume.git
cd CLI-Resume
# Install dependencies
npm install
# Run the resume
npm startAlternative:
node index.jsGlobal install (optional)
Install as a global CLI command:
npm install -g shubham0401
shubham0401Usage
- Run
npm start - Wait for the boot animation and welcome HUD (~6–8 seconds)
- Use ↑ / ↓ to select a resume section
- Press Enter to view content
- Choose Back to return to the menu or Exit for shutdown animation
Available sections
| Section | Contents |
|---|---|
| About Me | Bio, LeetCode stats, focus areas |
| Education | Degree, CGPA, coursework |
| Professional Experience | Internships at Jaggery Consulting & StarkSeek |
| Tech Skills | Languages, frontend, backend, cloud, AI |
| Projects | 7 projects with descriptions + tech stack |
| Achievements | LeetCode Knight, contest rank, deployments |
| Certifications | 100xDevs, Code Help DSA |
| Personal Interest | CP, system design, chess, badminton |
| Contact Me | GitHub, LinkedIn, LeetCode, Portfolio, WhatsApp, Email |
Project Structure
CLI-Resume/
├── data/
│ └── resume.json # All resume content (single source of truth)
├── index.js # Main CLI app, menu, section rendering
├── welcome.js # Boot sequence, banner, HUD, role scan
├── animation.js # Intro prompt + exit/shutdown animations
├── theme.js # Colors, progress bars, panels, centering helpers
├── package.json
├── .eslintrc
└── README.mdFile responsibilities
| File | Role |
|---|---|
index.js |
Entry point, inquirer menu, color logic per section, contact link handling |
welcome.js |
Startup: shell unlock → banner → HUD → inject → access granted |
animation.js |
Post-welcome prompt; full shutdown sequence on exit |
theme.js |
Shared HACK color palette, progress bars, HUD/border panels, glitch helpers |
data/resume.json |
Structured resume data consumed by the CLI |
Customizing Your Resume
All content lives in data/resume.json. Edit this file — no code changes needed for most updates.
Array sections (About Me, Education, Projects, etc.)
"About Me": [
"Line one of your bio.",
"Line two..."
]Professional Experience format
"Professional Experience": [
"Jan 2025 – Jun 2025 · SDE Intern @ Company Name (City, India)",
" → First bullet point with impact metrics.",
" → Second bullet point.",
"",
"Next internship header...",
" → Bullet..."
]- Header lines use
·between date and role,@before company - Bullet lines must start with
→(two spaces + arrow) for cyan styling
Projects format
"Projects": [
"ProjectName",
" First description line.",
" Second description line (optional).",
" Tech Stack: Next.js · React · TypeScript",
"",
"NextProject",
" ..."
]- Title line = no leading spaces
- Description lines = two leading spaces, not starting with
Tech Stack: - Stack line starts with
Tech Stack:orStack ·
Contact Me (object)
"Contact Me": {
"GitHub": "https://github.com/yourusername",
"LinkedIn": "https://linkedin.com/in/you",
"LeetCode": "https://leetcode.com/you",
"Portfolio": "https://yourportfolio.vercel.app",
"WhatsApp": "+91 9876543210",
"Email": "you@email.com"
}WhatsApp auto-converts to https://wa.me/.... Email opens mailto:.
Tech Stack
| Layer | Tools |
|---|---|
| Runtime | Node.js |
| CLI input | inquirer v6 |
| Styling | chalk v2 |
| ASCII art | cfonts |
| Animation | chalk-animation |
| Links | terminal-link |
| Data | Static JSON (data/resume.json) |
| Linting | ESLint + eslint-plugin-node |
Scripts
| Command | Description |
|---|---|
npm start |
Run the CLI resume |
npm run lint |
Run ESLint on the project |
npm test |
Placeholder (no tests configured) |
Color Theme
The app uses a custom hacker green palette defined in theme.js:
HACK = {
green: "#00ff41", // Primary terminal green
bright: "#39ff14", // Bold highlights
dim: "#00aa2a", // Muted green
cyan: "#00ffff", // Descriptions / bullets
red: "#ff3333", // Shutdown / errors
warn: "#ffcc00" // Warnings
}To change the theme, edit theme.js → HACK object.
Tips
- Best experience: Widen your terminal to ~100+ columns for centered banner and panels
- Clickable links: Work in iTerm2, VS Code/Cursor terminal, Windows Terminal — may show plain text in basic terminals
- Faster iteration: Edit
resume.jsonand re-runnpm start— no rebuild needed - Fork it: Replace
resume.jsoncontent with your own profile and updatepackage.jsonauthor/bin name
Author
Shubham Malik
Full-Stack AI Developer · B.Tech CSE · Class of 2026
| Portfolio | shubhammalik1.vercel.app |
| GitHub | @subhm2004 |
| shubham04012003 | |
| LeetCode | subhm2003 |
License
ISC © Shubham Malik
Built with Node.js · Styled for the terminal · Shipped from Sonipat, India