Building a Terminal-Themed Portfolio
When I set out to build this site, I wanted something that felt like firing up an old Unix terminal — green phosphor glow, blinking cursor, ASCII art banners, and that satisfying typewriter feel.
The Stack
- Vite for fast bundling and HMR
- Vanilla JS for routing and DOM manipulation
- Supabase for blog post storage
- CSS for the terminal aesthetic
ASCII Art
The header banner uses figlet-style ASCII art rendered in a <pre> block:
____ _ _
| _ \(_)___ ___ __ _| |
| | | | / __|/ _ \/ _` | |
| |_| | \__ \ __/ (_| | |
|____/|_|___/\___|\__,_|_|
Custom Cursor
The cursor is a blinking block element that follows the mouse. On hover over links it expands and changes color.
Why Vanilla JS?
No framework overhead. The site is small enough that a hash-based router and a few render functions do the job perfectly. Less code, faster load, easier to maintain.
Conclusion
The terminal aesthetic is a love letter to computing history. It is minimalist, fast, and unmistakably personal.