From 8aba95e8b671e282271b33686960e146a7c6063f Mon Sep 17 00:00:00 2001 From: vermashaurya Date: Mon, 4 May 2026 00:39:41 +0530 Subject: [PATCH 1/2] dynamic-hero-text --- index.html | 8 ++++---- script.js | 41 +++++++++++++++++++++++++++++++++++++++++ styles.css | 18 ++++++++++++++++++ 3 files changed, 63 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index 41792f3..f038029 100644 --- a/index.html +++ b/index.html @@ -210,7 +210,8 @@

Shaurya Verma

Senior Software Engineer at Capgemini

-

Readable products, reliable systems, and a little personality.

+

Readable products, reliable systems, and a little
+ |

I build full-stack experiences with Angular, React, ASP.NET Web API, Java, and AI-assisted workflows. I care about clarity in interfaces, @@ -225,8 +226,7 @@

Readable products, reliable systems, and a little personality.

target="_blank" rel="noreferrer" data-testid="btn-email" - >Let’s Talk + >Let’s Talk | Around Brookefield? Hit me up.

Contact Me

-

Looking for a developer who builds reliable systems, not just demos?
Let’s talk.

+

Looking for a developer who builds reliable systems, not just demos?
Let’s talk.|

I build production-grade systems with product-level polish. If your team wants clean implementation without dead UI, this is the diff --git a/script.js b/script.js index d365b0c..b567281 100644 --- a/script.js +++ b/script.js @@ -225,6 +225,47 @@ tiltItems.forEach((item) => { }); }); +const textElement = document.getElementById('typewriter'); +const phrases = [ + "personality.", + "creativity.", + "touch of life." +]; + +let phraseIndex = 0; +let characterIndex = 0; +let isDeleting = false; +let typeSpeed = 27; + +function type() { + const currentPhrase = phrases[phraseIndex]; + + if (isDeleting) { + // Remove a character + textElement.textContent = currentPhrase.substring(0, characterIndex - 1); + characterIndex--; + typeSpeed = 50; + } else { + // Add a character + textElement.textContent = currentPhrase.substring(0, characterIndex + 1); + characterIndex++; + typeSpeed = 120; + } + + if (!isDeleting && characterIndex === currentPhrase.length) { + isDeleting = true; + typeSpeed = 2000; + } else if (isDeleting && characterIndex === 0) { + isDeleting = false; + phraseIndex = (phraseIndex + 1) % phrases.length; + typeSpeed = 500; + } + + setTimeout(type, typeSpeed); +} + +document.addEventListener('DOMContentLoaded', type); + const updateChrome = () => { const currentScrollY = window.scrollY; const isCompact = currentScrollY > 8; diff --git a/styles.css b/styles.css index 04a84a2..3e86c88 100644 --- a/styles.css +++ b/styles.css @@ -700,6 +700,24 @@ h3 { margin-top: 2rem; } +.cursor { + animation: blink 0.8s infinite; + visibility: hidden; +} +.cursor1 { + animation: blink 0.8s infinite; + padding-bottom: 0.2rem; +} +.cursor2 { + animation: blink 0.8s infinite; + font-size: 3.2rem; +} + +@keyframes blink { + 0%, 100% { opacity: 1; } + 50% { opacity: 0; } +} + .button { display: inline-flex; align-items: center; From 6078e6e3cf6d70dc28d9500b43618b31823fc8da Mon Sep 17 00:00:00 2001 From: vermashaurya Date: Mon, 4 May 2026 00:41:22 +0530 Subject: [PATCH 2/2] footer-space --- portfolio/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/portfolio/index.html b/portfolio/index.html index 73bde70..75dcc68 100644 --- a/portfolio/index.html +++ b/portfolio/index.html @@ -1123,7 +1123,7 @@

Explore More