lorenz-portfolio
v1.0.0
Published
CLI portfolio for Lorenz F. Estrella — run via npx lorenz-portfolio
Downloads
137
Readme
lorenz-portfolio — CLI Terminal Portfolio
Unique terminal portfolio for Lorenz F. Estrella — runs in a real terminal via
npx. Separate project — does not modifyportfolio/orportfolio-v2.
Requires Node.js 18+
Check:
node -v # must be >= v18If lower, the CLI shows: Node.js 18+ required. You have v...
Quick Start
cd portfolio-terminal
npm install
npm start
# or
npx .After publish:
npx lorenz-portfolioHow to Use
- Menu mode (default): Arrow keys → select About / Experience / Skills / Projects / Awards / Contact → Enter. Press Enter to return.
- Command mode: Choose
⌘ Command modefrom menu, then type:
help — show help
whoami — who is Lorenz
ls — list sections & projects
cat <section> — cat about | experience | skills | projects | awards | contact
cat <project-id> — cat epark-mo, cat marqai, etc.
goto <section> — alias for cat
clear — clear screen
date / echo — utils
menu — back to menu
exit — quitExamples:
ls
cat projects
cat epark-mo
cat skills
whoami- Piped / non-TTY:
echo "help" | node bin/lorenz.js(used for CI verification)
Data Source
All content copied verbatim from C:\AllaboutProgrammingHere\portfolio\index.html into src/data/profile.js. No placeholder data.
Projects: 7 items — Convergent Scanner, E-Park Mo, MarqAI, Flappy Avatar, DVYA Basketball, AI Mock Interview Coach, RGJ Trucking Services.
Structure
portfolio-terminal/
├── bin/lorenz.js # shebang + Node check + main()
├── src/
│ ├── data/profile.js # frozen portfolio data
│ ├── ui/banner.js # figlet + boxen
│ ├── ui/menu.js # inquirer menu
│ ├── ui/styles.js # chalk helpers
│ ├── commands/parser.js # parseCommand
│ ├── commands/handlers.js # help, ls, cat, etc.
│ ├── views/*.js # about, experience, skills, projects, awards, contact
│ └── index.js # main loop
├── specs/001-hybrid-terminal/ # Spec → Plan → Tasks
└── package.json (bin: lorenz-portfolio)Publish (optional)
npm publish --access public
# then anyone can run
npx lorenz-portfolioOr create binary without Node (future): npm i -g pkg && pkg .
Verification
npm install
echo "help" | node bin/lorenz.js
echo "cat projects" | node bin/lorenz.js
echo "foobar" | node bin/lorenz.js # → command not found
node bin/lorenz.js # interactiveNo files in ../portfolio are touched — verified by spec.
