The very site you're browsing right now — a responsive personal portfolio built from scratch with HTML, CSS and vanilla JavaScript, designed to feel alive instead of like a static template.
This portfolio is a hand-built, fully responsive personal site covering everything from a landing splash screen to project case studies like this one. No page builder or template — every animation, layout and interaction was written directly in HTML, CSS and JavaScript.
Most student portfolio sites lean on a single free template with the name swapped out. I wanted mine to actually demonstrate the front-end skills it's describing — so instead of picking a template, I built the layout, the dark mode system, the custom cursor, and the little interactive touches myself. It became less of a resume page and more of a playground for practicing CSS animation, responsive design and clean JavaScript.
Getting the dark and light theme to persist without a flash of the wrong theme on page load meant rethinking exactly when the theme class gets applied. Building the custom cursor to feel smooth without hurting performance on lower-end laptops took some trimming of unnecessary repaints. And a checkbox-driven mobile menu is more fiddly than it looks to make fully usable with keyboard navigation, without pulling in a JavaScript framework just to handle a menu.
A smooth theme toggle that remembers the visitor's preference across pages.
A custom dot-and-ring cursor on desktop that reacts to hoverable elements.
A softly shifting gradient mesh runs behind every page for a sense of depth.
A checkbox-driven mobile menu that needs no extra JavaScript framework.
One-tap WhatsApp, email, call and social links so getting in touch takes seconds.
Progress bars and counters that animate into view as you scroll to them.
Every animation and layout trick here is open on GitHub.
Explore the Code