77 < div class ="container ">
88 < div class ="hero-content ">
99 < div class ="hero-text ">
10- < h1 class ="hero-title " id ="terminal-name "> {{ site.data.profile.name }} </ h1 >
11- < h2 class ="hero-subtitle " id ="terminal-headline "> {{ site.data.profile.headline }} </ h2 >
12- < p class ="hero-description " id ="terminal-bio "> {{ site.data.profile.bio }} </ p >
13- < div class ="hero-buttons " id ="hero-buttons ">
10+ < h1 class ="hero-title " id ="terminal-name "> </ h1 >
11+ < h2 class ="hero-subtitle " id ="terminal-headline "> </ h2 >
12+ < p class ="hero-description " id ="terminal-bio "> </ p >
13+ < div class ="hero-buttons " id ="hero-buttons " style =" opacity: 0; transition: opacity 0.5s ease-in; " >
1414 < a href ="{{ site.data.profile.contact.github }} " class ="btn btn-primary github-btn " target ="_blank ">
1515 < svg viewBox ="0 0 24 24 " width ="20 " height ="20 " fill ="currentColor " style ="margin-right: 8px; ">
1616 < path d ="M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.509 11.509 0 0112 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12z "/>
@@ -99,10 +99,14 @@ <h3>Connect</h3>
9999
100100< script >
101101 // Terminal typewriter effect with single cursor
102+ const nameText = "{{ site.data.profile.name }}" ;
103+ const headlineText = "{{ site.data.profile.headline }}" ;
104+ const bioText = "{{ site.data.profile.bio }}" ;
105+
102106 const texts = [
103- { element : document . getElementById ( 'terminal-name' ) , text : "{{ site.data.profile.name }}" , speed : 80 } ,
104- { element : document . getElementById ( 'terminal-headline' ) , text : "{{ site.data.profile.headline }}" , speed : 60 } ,
105- { element : document . getElementById ( 'terminal-bio' ) , text : "{{ site.data.profile.bio }}" , speed : 40 }
107+ { element : document . getElementById ( 'terminal-name' ) , text : nameText , speed : 80 } ,
108+ { element : document . getElementById ( 'terminal-headline' ) , text : headlineText , speed : 60 } ,
109+ { element : document . getElementById ( 'terminal-bio' ) , text : bioText , speed : 40 }
106110 ] ;
107111
108112 let currentTextIndex = 0 ;
@@ -111,18 +115,14 @@ <h3>Connect</h3>
111115
112116 function typeWriter ( ) {
113117 if ( currentTextIndex >= texts . length ) {
114- // All text typed, remove cursor
118+ // All text typed, remove cursor and show buttons
115119 texts [ texts . length - 1 ] . element . innerHTML = texts [ texts . length - 1 ] . element . innerHTML . replace ( cursor , '' ) ;
120+ document . getElementById ( 'hero-buttons' ) . style . opacity = '1' ;
116121 return ;
117122 }
118123
119124 const current = texts [ currentTextIndex ] ;
120125
121- if ( charIndex === 0 ) {
122- // Clear the element when starting to type
123- current . element . innerHTML = cursor ;
124- }
125-
126126 if ( charIndex < current . text . length ) {
127127 // Type current character
128128 current . element . innerHTML = current . text . substring ( 0 , charIndex + 1 ) + cursor ;
0 commit comments