Project Status : Legacy (Maintenance Mode)
Focus : Retro CRT Emulation & Terminal UI/UX
- Chapter 1: The Initial Spark
- Chapter 2: Phase 1 - The Tux Era
- Chapter 3: Shifting to Retro-Hardware Aesthetics
- Chapter 4: The Messy Reality of the Codebase
- Chapter 5: Managing Asynchronous Audio & Text
- Chapter 6: Deep Space Protocol
- Chapter 7: Moving Beyond Web Development
The Initial Spark
This project didn't start in a code editor; it started on paper. During a 3rd-year MERN stack workshop conducted by SPACE_ZEE, everyone tasked to make thier own web layouts,on that time i was really into distro hopping and stuffs so I wanted to build something like a terminal. I sat down with a notebook and sketched the CLI (Command Line Interface) prompts and boot logs before writing a single line of CSS.
Phase 1: The Tux Era
The first functional version was built rapidly. It was clean and modern, inspired by contemporary Linux distributions. It featured the Tux mascot and a simple Dracula color palette. It served its purpose as a portfolio, but it lacked the "soul" of the older hardware I admired.
Shifting to Retro-Hardware Aesthetics
I decided to overhaul the entire project to mimic a DEC VT340 video terminal. This required a deep dive into CRT (Cathode Ray Tube) visual artifacts—adding scanlines, screen flicker, and color-specific glows (Green,Vapor, Cyan). The goal was to make the browser feel like a heavy piece of 80s hardware.
The Messy Reality of the Codebase
As the project grew, the code became a "living document" of my learning process. It is, admittedly, a mess. The repository is filled with unused methods, abandoned implementations, and "ghost" code. However, this messiness is a byproduct of extreme modification and rapid prototyping. It’s a low-maintenance codebase that somehow achieves a high-end result.
Managing Asynchronous Audio & Text
One of the hardest technical hurdles was syncing the typewriter effect with the audio. If a user spammed the "Next" button, the sounds would overlap and create "audio ghosting." I had to implement a nuclear kill-switch using async/await to ensure that every audio thread and typing loop was terminated instantly upon navigation.
Deep Space Protocol
To prevent the terminal from feeling "dead" when empty, I created the Deep Space Protocol. This is a procedural generation script that spawns a dense starfield using CSS animations whenever the CLEAR command is triggered. It turns a simple utility command into a visual experience.
Moving Beyond Web Development
I’ve updated this portfolio every six months for years, and it was a great way to learn. But honestly, Web Development has started to feel boring. I’m pretty much done with further updates to this project.
I’ve shifted my focus entirely to Game Development, where I can work with more complex rendering and logic. If you want to see what I’m working on now, check out my current project:
Is the code clean? No. Is it built exactly how I imagined it on that piece of paper? Yes.







