sreelekhaputta2 commited on
Commit
3a406fa
Β·
verified Β·
1 Parent(s): 42fd3b6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +95 -227
app.py CHANGED
@@ -15,26 +15,20 @@ class Portfolio:
15
  }
16
 
17
  self.about = """
18
- Hi, I'm <strong style="color: #FFA500;">Sreelekha</strong>, a passionate <strong>AI/ML enthusiast, innovator, and problem solver</strong>
19
- currently in my final year of B.Tech. My journey blends technical skills with creativityβ€”I love building AI-powered tools that
20
- make life simpler, meaningful, and even spiritual.
21
  <br><br>
22
- I've worked as an <strong style="color: #FFC069;">AI Intern at Spectov</strong> and an <strong style="color: #FFC069;">AI Tools Expert Intern at Website Makers</strong>,
23
- gaining hands-on experience in <strong>Generative AI, NLP, and Machine Learning applications</strong>. Alongside, I've developed unique projects like:
24
  <br><br>
25
- β€’ <strong style="color: #87CEEB;">Idealyze</strong> – an AI startup validator with 85% accuracy<br>
26
- β€’ <strong style="color: #87CEEB;">WiseVerse</strong> – a Bhagavad Gita-based AI chatbot with 95% accuracy<br>
27
- β€’ <strong style="color: #87CEEB;">DivineLoop</strong> and <strong style="color: #87CEEB;">AvatarVerse</strong> – creative AI solutions<br>
28
- β€’ <strong style="color: #87CEEB;">GenDoc AI</strong> – an AI-driven code documentation tool
29
  <br><br>
30
- With an <strong style="color: #FFA500;">8.0 CGPA</strong> and a strong foundation in <strong>Python, ML, Deep Learning, and AI frameworks</strong>,
31
- I aim to grow into an <strong>AI Project Manager & Generative AI Engineer</strong>, bridging technology with real-world impact.
32
  <br><br>
33
- Outside of tech, I find peace in spirituality and creativityβ€”I'm deeply inspired by the teachings of Lord Krishna,
34
- which guide my mindset toward resilience and growth.
35
  <br><br>
36
- <strong style="color: #FFD700;">My goal:</strong> To <strong>shape the future of AI</strong> while making technology more
37
- <strong>human-centered, ethical, and impactful</strong>.
38
  """
39
 
40
  self.projects = [
@@ -52,130 +46,23 @@ class Portfolio:
52
  "achievements": ["WiseVerse chatbot with 95% accuracy, 40% engagement boost", "Idealyze validator with 85% accuracy, 50% better decisions", "AI tools & prompt engineering boosting efficiency by 35%"]}
53
  ]
54
 
55
- def create_css(self):
56
- return """
57
- <style>
58
- @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
59
-
60
- /* Theme-adaptive text coloring */
61
- :root {
62
- --main-text-dark: #222;
63
- --main-text-light: #F4F4F9;
64
- --highlight-dark: #FFA500;
65
- --highlight-light: #FFA500;
66
- }
67
-
68
- html, body, .gradio-container {
69
- font-family: 'Inter', sans-serif !important;
70
- background: url('https://www.alldesigncreative.com/wp-content/uploads/2019/09/new-glitter-particles-black-screen-background-video-effect.png') no-repeat center center fixed !important;
71
- background-size: cover !important;
72
- color: var(--main-text-light) !important;
73
- margin: 0; padding: 0;
74
- transition: color 0.3s, background 0.3s;
75
- }
76
-
77
- .profile-header {
78
- background: linear-gradient(135deg, #5252a3 0%, #633d9c 100%);
79
- padding: 30px; border-radius: 15px;
80
- color: var(--main-text-light) !important;
81
- margin: 20px 0;
82
- box-shadow: 0 10px 30px rgba(0,0,0,0.3);
83
- }
84
- .profile-name { font-size: 2.5rem; font-weight: 700; color: #FFD700 !important;}
85
- .badge {
86
- background: rgba(255,255,255,0.18); padding: 8px 16px;
87
- border-radius: 20px; display: inline-block; margin: 5px;
88
- color: var(--main-text-dark) !important;
89
- background: #FFD7001F !important;
90
- }
91
- /* For theme switching, prefer dark badge text on light backgrounds */
92
- @media (prefers-color-scheme: dark) {
93
- .badge { color: var(--main-text-light) !important; }
94
- }
95
- .card, .project-card, .stat-box, .tech-tag, .btn-primary {
96
- color: var(--main-text-dark) !important;
97
- background: #FFF !important;
98
- }
99
- .card-title { color: #FFA500 !important; }
100
- .project-card {
101
- background: linear-gradient(145deg, #f8f8fc, #e6e4f6) !important;
102
- border: 1px solid #FFD70066;
103
- color: var(--main-text-dark) !important;
104
- }
105
- .tech-tag {
106
- background: #FFD70022 !important;
107
- color: var(--main-text-dark) !important;
108
- }
109
- .btn-primary {
110
- background: linear-gradient(45deg, #FFA500, #FF6B6B) !important;
111
- color: #FFF !important;
112
- }
113
- .btn-primary:hover {
114
- background: linear-gradient(45deg, #FFB733, #FF4B4B);
115
- color: #FFF !important;
116
- }
117
- .stat-box { background: #FEF4E0 !important; color: var(--main-text-dark) !important;}
118
- /* Dropdown and tab highlight fix */
119
- .svelte-dnp2b8 .tab-header, .dropdown, .gr-dropdown {
120
- color: var(--main-text-dark) !important;
121
- background: #FFF !important;
122
- border-radius: 8px !important;
123
- }
124
- .dropdown .active, .tab-header .active {
125
- color: #FFA500 !important;
126
- font-weight: 700 !important;
127
- }
128
- /* Filename and file component style for resume */
129
- .gr-file {
130
- background: #EEE !important;
131
- color: #181818 !important;
132
- border-radius: 10px !important;
133
- }
134
- .gr-file__label { color: #444 !important; }
135
- .gr-file__filename { color: #222!important; font-weight: 500; }
136
- /* Mobile view fixes */
137
- @media (max-width: 700px) {
138
- .badge, .card, .project-card, .stat-box, .tech-tag, .btn-primary, .profile-header, * {
139
- color: var(--main-text-dark) !important;
140
- background: #FFF !important;
141
- text-shadow: none !important;
142
- }
143
- }
144
- /* Extra: dark color on file name always */
145
- .gr-file__filename, .gr-file__label {
146
- color: #181818 !important;
147
- }
148
- </style>
149
- """
150
-
151
  def create_header(self):
152
  return f"""
153
- {self.create_css()}
154
- <div class="profile-header">
155
- <div style="display: flex; align-items: center; gap: 30px; flex-wrap: wrap; justify-content: center;">
156
- <div style="flex: 1; min-width: 300px; text-align: center;">
157
- <h1 class="profile-name">{self.profile['name']}</h1>
158
- <p style="font-size: 1.3rem; margin-bottom: 15px; color: #FFD700;">{self.profile['title']}</p>
159
- <div>
160
- <span class="badge">πŸ“ {self.profile['location']}</span>
161
- <span class="badge">πŸ“ž {self.profile['phone']}</span>
162
- <span class="badge">βœ‰οΈ {self.profile['email']}</span>
163
- </div>
164
- <div style="margin-top: 15px;">
165
- <span class="badge">πŸŽ“ B.Tech IT(AI/ML) | CGPA: {self.profile['cgpa']}</span>
166
- </div>
167
- </div>
168
- </div>
169
  </div>
170
  """
171
 
172
  def create_about(self):
173
  return f"""
174
- <div class="card">
175
- <h2 class="card-title">πŸ‘€ About Me</h2>
176
- <p style="line-height: 1.8; font-size: 1.05rem;">
177
- {self.about}
178
- </p>
179
  </div>
180
  """
181
 
@@ -186,17 +73,17 @@ class Portfolio:
186
  fig = go.Figure()
187
  fig.add_trace(go.Scatterpolar(
188
  r=values + [values[0]], theta=categories + [categories[0]],
189
- fill='toself', fillcolor='rgba(255, 165, 0, 0.3)',
190
- line_color='#FFA500', line_width=2, marker=dict(size=6, color='#FF6B6B')
191
  ))
192
  fig.update_layout(
193
  polar=dict(
194
- radialaxis=dict(visible=True, range=[0, 100], tickfont=dict(color='#FFA500'), gridcolor='rgba(255,255,255,0.22)'),
195
- angularaxis=dict(tickfont=dict(color='#FFA500'), gridcolor='rgba(255,255,255,0.22)')
196
  ),
197
- paper_bgcolor='rgba(0,0,0,0)', plot_bgcolor='rgba(0,0,0,0)',
198
  title=dict(text="Technical & Soft Skills", font=dict(size=18, color='#FFA500')),
199
- width=600, height=500, showlegend=False
 
200
  )
201
  return fig
202
 
@@ -208,82 +95,70 @@ class Portfolio:
208
  x=metrics, y=values,
209
  marker_color=['#FFA500', '#FF6B6B', '#00FF87', '#87CEEB'],
210
  text=[f'{v}%' for v in values], textposition='auto',
211
- textfont=dict(color='#222')
212
  )])
213
  fig.update_layout(
214
  title=dict(text="Key Project Metrics", font=dict(size=18, color='#FFA500')),
215
- xaxis=dict(title="Projects/Metrics", tickfont=dict(color='#222')),
216
- yaxis=dict(title="Percentage", tickfont=dict(color='#222')),
217
- paper_bgcolor='rgba(0,0,0,0)', plot_bgcolor='rgba(0,0,0,0)',
218
- width=600, height=400
219
  )
220
  return fig
221
 
222
  def create_interface():
223
  portfolio = Portfolio()
224
 
225
- css = """
226
- .gradio-container { background: linear-gradient(135deg, #faf8fe, #ede9fc) !important; }
227
- .gr-button { background: linear-gradient(45deg, #FFA500, #FF6B6B) !important; color: #181818 !important; }
228
- """
229
-
230
- with gr.Blocks(css=css, title="Sreelekha Putta - AI Engineer Portfolio") as demo:
231
  with gr.Row():
232
  with gr.Column(scale=1):
233
  profile_img = gr.Image(
234
  value="profile.jpg",
235
  label="Profile Picture",
236
  show_label=False,
237
- height=200,
238
- width=200,
239
  type="filepath",
240
- container=True,
241
- elem_classes=["profile-image-container"]
242
  )
243
-
244
  gr.HTML(portfolio.create_header())
245
-
246
  with gr.Tabs():
247
  with gr.Tab("πŸ‘€ About"):
248
  gr.HTML(portfolio.create_about())
249
- with gr.Row():
250
- gr.HTML("""
251
- <div class="card">
252
- <h2 class="card-title">πŸŽ“ Education</h2>
253
- <div style="background: #FEF4E0; padding: 15px; border-radius: 10px;">
254
- <h3 style="color: #FFD700;">B.Tech in Information Technology(AI/ML Specialization)</h3>
255
- <p style="color: #181818;">JNTUH College of Engineering Jagitial</p>
256
- <p style="color: #FFD700;">2022 – 2026 | CGPA: 8.0</p>
257
- </div>
258
  </div>
259
  """)
260
-
261
  with gr.Tab("πŸ’Ό Experience"):
262
- exp_html = '<div class="card"><h2 class="card-title">Professional Experience</h2>'
 
263
  for exp in portfolio.experience:
264
  exp_html += f"""
265
- <div class="project-card">
266
- <h3 style="color: #FFA500;">{exp['role']}</h3>
267
- <p style="color: #181818;">{exp['company']} | {exp['duration']}</p>
268
- <ul style="color: #181818; margin-top: 10px;">
269
  """
270
  for ach in exp['achievements']:
271
- exp_html += f'<li style="margin: 5px 0;">⚑ {ach}</li>'
272
  exp_html += '</ul></div>'
273
  exp_html += '</div>'
274
  gr.HTML(exp_html)
275
  gr.Plot(portfolio.create_metrics_chart())
276
 
277
  with gr.Tab("πŸš€ Projects"):
278
- proj_html = '<div class="card"><h2 class="card-title">Featured Projects</h2>'
279
  for proj in portfolio.projects:
280
- tags = ''.join([f'<span class="tech-tag">{t}</span>' for t in proj['tech']])
281
  proj_html += f"""
282
- <div class="project-card">
283
- <h3 style="color: #FFA500; margin-bottom: 10px;">{proj['name']}</h3>
284
- <p style="color: #181818; margin-bottom: 10px;">{proj['desc']}</p>
285
- <div style="margin-bottom: 10px;">{tags}</div>
286
- <a href="{proj['link']}" target="_blank" class="btn-primary">View Project β†’</a>
287
  </div>
288
  """
289
  proj_html += '</div>'
@@ -295,42 +170,42 @@ def create_interface():
295
  gr.Plot(portfolio.create_skills_chart())
296
  with gr.Column():
297
  gr.HTML("""
298
- <div class="card">
299
- <h2 class="card-title">Technical Skills</h2>
300
- <p style="color: #181818; line-height: 2;">
301
- <strong style="color: #FFA500;">Programming:</strong> Python, C, Java, SQL<br>
302
- <strong style="color: #FFA500;">AI/ML:</strong> Machine Learning, Deep Learning, NLP, Generative AI, LLMs<br>
303
- <strong style="color: #FFA500;">Frameworks:</strong> TensorFlow, PyTorch, Hugging Face, Flask<br>
304
- <strong style="color: #FFA500;">Tools:</strong> Git/GitHub, NumPy, Pandas, Matplotlib, Seaborn<br>
305
- <strong style="color: #FFA500;">Specialization:</strong> Prompt Engineering, Full-stack AI Deployment
306
- </p>
307
- <h2 class="card-title" style="margin-top: 20px;">Soft Skills</h2>
308
- <p style="color: #181818; line-height: 2;">
309
- β€’ <strong style="color: #00FF87;">Leadership</strong> – Led Cultural Night 2025 (1000+ audience)<br>
310
- β€’ <strong style="color: #00FF87;">Communication</strong> – Exceptional presentation & public speaking<br>
311
- β€’ <strong style="color: #00FF87;">Problem Solving</strong> – Creative AI solution design<br>
312
- β€’ <strong style="color: #00FF87;">Team Collaboration</strong> – Cross-functional project delivery<br>
313
- β€’ <strong style="color: #00FF87;">Project Management</strong> – Planning & execution excellence
314
- </p>
315
  </div>
316
  """)
317
 
318
  with gr.Tab("πŸ† Achievements"):
319
  gr.HTML("""
320
- <div class="card">
321
- <h2 class="card-title">Key Achievements</h2>
322
- <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 15px;">
323
- <div class="stat-box">
324
- <div class="stat-number">πŸ… Top Intern</div>
325
- <p style="margin-top: 8px;">Recognized for AI innovation at Website Makers (2025)</p>
326
  </div>
327
- <div class="stat-box">
328
- <div class="stat-number">🎀 1000+</div>
329
- <p style="margin-top: 8px;">Hosted Cultural Night 2025 at JNTUH</p>
330
  </div>
331
- <div class="stat-box">
332
- <div class="stat-number">πŸš€ 5+ Apps</div>
333
- <p style="margin-top: 8px;">Deployed on Hugging Face Spaces</p>
334
  </div>
335
  </div>
336
  </div>
@@ -340,32 +215,25 @@ def create_interface():
340
  with gr.Row():
341
  with gr.Column():
342
  gr.HTML(f"""
343
- <div class="card">
344
- <h2 class="card-title">Let's Connect</h2>
345
- <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px; margin: 20px 0;">
346
- <a href="{portfolio.profile['huggingface']}" target="_blank" class="btn-primary" style="text-align: center;">
347
- πŸ€— HuggingFace
348
- </a>
349
- <a href="{portfolio.profile['linkedin']}" target="_blank" class="btn-primary" style="text-align: center;">
350
- πŸ’Ό LinkedIn
351
- </a>
352
- <a href="mailto:{portfolio.profile['email']}" class="btn-primary" style="text-align: center;">
353
- βœ‰οΈ Email
354
- </a>
355
  </div>
356
- <p style="color: #FFA500; font-size: 1.2rem; text-align: center; font-style: italic; margin-top: 20px;">
357
  "Building AI with consciousness, creating technology with soul"
358
- </p>
359
  </div>
360
  """)
361
-
362
  with gr.Column():
363
  gr.HTML("""
364
- <div class="card">
365
- <h2 class="card-title">πŸ“„ Download Resume</h2>
366
- <p style="margin-bottom: 15px; color: #181818;">
367
  Get my complete resume with detailed project information and achievements.
368
- </p>
369
  </div>
370
  """)
371
  resume_file = gr.File(label="Resume", value="resume_sreelekha_putta.pdf", interactive=False)
@@ -374,5 +242,5 @@ def create_interface():
374
 
375
  if __name__ == "__main__":
376
  demo = create_interface()
377
- print("πŸš€ Launching Sreelekha Putta's Portfolio with optimized visibility for all text and elements!")
378
  demo.launch(share=True)
 
15
  }
16
 
17
  self.about = """
18
+ Hi, I'm <strong>Sreelekha</strong>, a passionate <strong>AI/ML enthusiast, innovator, and problem solver</strong>, in my final year of B.Tech. My journey blends technical skills with creativityβ€”I love building AI-powered tools that make life simpler, meaningful, and even spiritual.
 
 
19
  <br><br>
20
+ I've interned as an <strong>AI Intern at Spectov</strong> and <strong>AI Tools Expert Intern at Website Makers</strong>, gaining hands-on experience in <strong>Generative AI, NLP, and Machine Learning applications</strong>. Some unique projects:
 
21
  <br><br>
22
+ β€’ <strong>Idealyze</strong> – an AI startup validator (85% accuracy)<br>
23
+ β€’ <strong>WiseVerse</strong> – a Bhagavad Gita-based AI chatbot (95% accuracy)<br>
24
+ β€’ <strong>DivineLoop</strong> and <strong>AvatarVerse</strong> – creative AI solutions<br>
25
+ β€’ <strong>GenDoc AI</strong> – an AI-driven code documentation tool
26
  <br><br>
27
+ With an <strong>8.0 CGPA</strong> and a strong foundation in <strong>Python, ML, Deep Learning, and AI frameworks</strong>, I aim to grow into an <strong>AI Project Manager & Generative AI Engineer</strong>, bridging technology with real-world impact.
 
28
  <br><br>
29
+ Outside of tech, I find peace in spirituality and creativityβ€”I'm inspired by Lord Krishna's teachings, which guide my mindset toward resilience and growth.
 
30
  <br><br>
31
+ <strong>My goal:</strong> Shape the future of AI while making technology more <strong>human-centered, ethical, and impactful</strong>.
 
32
  """
33
 
34
  self.projects = [
 
46
  "achievements": ["WiseVerse chatbot with 95% accuracy, 40% engagement boost", "Idealyze validator with 85% accuracy, 50% better decisions", "AI tools & prompt engineering boosting efficiency by 35%"]}
47
  ]
48
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  def create_header(self):
50
  return f"""
51
+ <div style='background: linear-gradient(135deg, #5252a3 0%, #633d9c 100%); padding: 26px; border-radius: 14px; margin: 15px 0; box-shadow: 0 10px 30px rgba(0,0,0,0.22); text-align: center;'>
52
+ <h1 style='font-size: 2.3rem; color: #FFD700; font-weight: 700; margin-bottom: 6px;'>{self.profile['name']}</h1>
53
+ <div style='font-size: 1.10rem; color: #F4F4F4; margin-bottom: 4px;'>{self.profile['title']}</div>
54
+ <span style='display:inline-block;border-radius:14px;padding:4px 12px;margin:3px 2px;background:#FFA8001A;color:#442A00;'>πŸ“ {self.profile['location']}</span>
55
+ <span style='display:inline-block;border-radius:14px;padding:4px 12px;margin:3px 2px;background:#87CEEB1A;color:#003344;'>πŸ“ž {self.profile['phone']}</span>
56
+ <span style='display:inline-block;border-radius:14px;padding:4px 12px;margin:3px 2px;background:#FF6B6B1A;color:#560000;'>βœ‰οΈ {self.profile['email']}</span>
57
+ <br><span style='display:inline-block;border-radius:14px;padding:4px 12px;margin:4px 2px;background:#FFD70021;color:#595106;'>πŸŽ“ B.Tech IT(AI/ML) | CGPA: {self.profile['cgpa']}</span>
 
 
 
 
 
 
 
 
 
58
  </div>
59
  """
60
 
61
  def create_about(self):
62
  return f"""
63
+ <div style='background: #FFF; border-radius:11px; margin:0 0 16px 0; padding:18px; color:#232323;'>
64
+ <h2 style="color:#FFA500; font-weight:700; margin-bottom:10px;">πŸ‘€ About Me</h2>
65
+ <div style="font-size:1.04rem; line-height:1.75;">{self.about}</div>
 
 
66
  </div>
67
  """
68
 
 
73
  fig = go.Figure()
74
  fig.add_trace(go.Scatterpolar(
75
  r=values + [values[0]], theta=categories + [categories[0]],
76
+ fill='toself', fillcolor='rgba(255, 165, 0, 0.18)',
77
+ line_color='#FFA500', line_width=2, marker=dict(size=6, color='#FFA500')
78
  ))
79
  fig.update_layout(
80
  polar=dict(
81
+ radialaxis=dict(visible=True, range=[0, 100]),
82
+ angularaxis=dict(tickfont=dict(size=13))
83
  ),
 
84
  title=dict(text="Technical & Soft Skills", font=dict(size=18, color='#FFA500')),
85
+ width=530, height=380, showlegend=False,
86
+ paper_bgcolor="#FFF", plot_bgcolor="#FFF"
87
  )
88
  return fig
89
 
 
95
  x=metrics, y=values,
96
  marker_color=['#FFA500', '#FF6B6B', '#00FF87', '#87CEEB'],
97
  text=[f'{v}%' for v in values], textposition='auto',
98
+ textfont=dict(color='#333')
99
  )])
100
  fig.update_layout(
101
  title=dict(text="Key Project Metrics", font=dict(size=18, color='#FFA500')),
102
+ xaxis=dict(title="Projects/Metrics"),
103
+ yaxis=dict(title="Percentage"),
104
+ paper_bgcolor="#FFF", plot_bgcolor="#FFF",
105
+ width=530, height=330
106
  )
107
  return fig
108
 
109
  def create_interface():
110
  portfolio = Portfolio()
111
 
112
+ with gr.Blocks(theme=gr.themes.HuggingFace(), title="Sreelekha Putta - AI Engineer Portfolio") as demo:
 
 
 
 
 
113
  with gr.Row():
114
  with gr.Column(scale=1):
115
  profile_img = gr.Image(
116
  value="profile.jpg",
117
  label="Profile Picture",
118
  show_label=False,
119
+ height=185,
120
+ width=185,
121
  type="filepath",
122
+ container=True
 
123
  )
 
124
  gr.HTML(portfolio.create_header())
 
125
  with gr.Tabs():
126
  with gr.Tab("πŸ‘€ About"):
127
  gr.HTML(portfolio.create_about())
128
+ gr.HTML("""
129
+ <div style='background: #FEF7DA; border-radius:10px; margin:0 0 18px 0; padding:15px;'>
130
+ <h3 style="color: #FFA500;">B.Tech in Information Technology (AI/ML Specialization)</h3>
131
+ <div style="color:#2a2a2a;">JNTUH College of Engineering Jagitial</div>
132
+ <div style="color: #FFA500;">2022 – 2026 | CGPA: 8.0</div>
 
 
 
 
133
  </div>
134
  """)
 
135
  with gr.Tab("πŸ’Ό Experience"):
136
+ exp_html = '<div style="background:#FFF; border-radius:11px; padding:18px;">'
137
+ exp_html += '<h2 style="color:#FFA500; margin-bottom:10px;">Professional Experience</h2>'
138
  for exp in portfolio.experience:
139
  exp_html += f"""
140
+ <div style="background:#FAFAFF;border:1px solid #F1EAFB;border-radius:10px; margin-bottom:11px; padding:12px;">
141
+ <h3 style="color:#FFA500;">{exp['role']}</h3>
142
+ <div style="color:#364F6B;">{exp['company']} | {exp['duration']}</div>
143
+ <ul style="margin-top:10px; color:#363636;">
144
  """
145
  for ach in exp['achievements']:
146
+ exp_html += f'<li style="margin:5px 0;">⚑ {ach}</li>'
147
  exp_html += '</ul></div>'
148
  exp_html += '</div>'
149
  gr.HTML(exp_html)
150
  gr.Plot(portfolio.create_metrics_chart())
151
 
152
  with gr.Tab("πŸš€ Projects"):
153
+ proj_html = '<div style="background:#FFF; border-radius:11px; padding:18px;"><h2 style="color:#FFA500; margin-bottom:10px;">Featured Projects</h2>'
154
  for proj in portfolio.projects:
155
+ tags = ''.join([f'<span style="background:#FFD70022; color:#232323; border-radius:6px; font-size:0.98em; padding:2px 7px; margin:0 4px 0 0;">{t}</span>' for t in proj['tech']])
156
  proj_html += f"""
157
+ <div style="background:linear-gradient(135deg,#f6f6fb 65%,#ffe277 100%);border:1px solid #FFD70044;border-radius:10px;margin-bottom:13px;padding:13px;">
158
+ <h3 style="margin-bottom:7px;color:#FFA500;">{proj['name']}</h3>
159
+ <div style="margin-bottom:7px;color:#232323;">{proj['desc']}</div>
160
+ <div style="margin-bottom:7px;">{tags}</div>
161
+ <a href="{proj['link']}" target="_blank" style="padding:7px 17px;background:#FFA500;color:#FFF;border-radius:9px;font-weight:600;text-decoration:none;">View Project β†’</a>
162
  </div>
163
  """
164
  proj_html += '</div>'
 
170
  gr.Plot(portfolio.create_skills_chart())
171
  with gr.Column():
172
  gr.HTML("""
173
+ <div style="background:#FFF; border-radius:10px; padding:15px;">
174
+ <h2 style="color:#FFA500;">Technical Skills</h2>
175
+ <div style="color:#262626; line-height:2;">
176
+ <strong>Programming:</strong> Python, C, Java, SQL<br>
177
+ <strong>AI/ML:</strong> Machine Learning, Deep Learning, NLP, Generative AI, LLMs<br>
178
+ <strong>Frameworks:</strong> TensorFlow, PyTorch, Hugging Face, Flask<br>
179
+ <strong>Tools:</strong> Git/GitHub, NumPy, Pandas, Matplotlib, Seaborn<br>
180
+ <strong>Specialization:</strong> Prompt Engineering, Full-stack AI Deployment
181
+ </div>
182
+ <h2 style="margin-top:18px;color:#FFA500;">Soft Skills</h2>
183
+ <div style="color:#222; line-height:2;">
184
+ β€’ <strong>Leadership</strong> – Led Cultural Night 2025 (1000+ audience)<br>
185
+ β€’ <strong>Communication</strong> – Exceptional presentation, public speaking<br>
186
+ β€’ <strong>Problem Solving</strong> – Creative AI solution design<br>
187
+ β€’ <strong>Team Collaboration</strong> – Cross-functional project delivery<br>
188
+ β€’ <strong>Project Management</strong> – Planning, execution excellence
189
+ </div>
190
  </div>
191
  """)
192
 
193
  with gr.Tab("πŸ† Achievements"):
194
  gr.HTML("""
195
+ <div style="background:#FFF; border-radius:10px; padding:17px;">
196
+ <h2 style="color:#FFA500;">Key Achievements</h2>
197
+ <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(215px, 1fr)); gap: 11px;">
198
+ <div style="background:#FFFBF0; border-radius:8px; text-align:center; padding:11px;">
199
+ <div style="font-size:1.3em; color:#FFA500;">πŸ… Top Intern</div>
200
+ <div style="margin-top:6px; color:#232323;">Recognized for AI innovation at Website Makers (2025)</div>
201
  </div>
202
+ <div style="background:#FFFBF0; border-radius:8px; text-align:center; padding:11px;">
203
+ <div style="font-size:1.3em; color:#FFA500;">🎀 1000+</div>
204
+ <div style="margin-top:6px; color:#232323;">Hosted Cultural Night 2025 at JNTUH</div>
205
  </div>
206
+ <div style="background:#FFFBF0; border-radius:8px; text-align:center; padding:11px;">
207
+ <div style="font-size:1.3em; color:#FFA500;">πŸš€ 5+ Apps</div>
208
+ <div style="margin-top:6px; color:#232323;">Deployed on Hugging Face Spaces</div>
209
  </div>
210
  </div>
211
  </div>
 
215
  with gr.Row():
216
  with gr.Column():
217
  gr.HTML(f"""
218
+ <div style="background:#FFF; border-radius:10px; padding:15px;">
219
+ <h2 style="color:#FFA500;">Let's Connect</h2>
220
+ <div style="margin:14px 0;">
221
+ <a href="{portfolio.profile['huggingface']}" target="_blank" style="display:inline-block;padding:10px 18px;margin:4px 8px 4px 0;background:#FFB733;color:#242424;border-radius:7px;font-weight:600;text-decoration:none;">πŸ€— HuggingFace</a>
222
+ <a href="{portfolio.profile['linkedin']}" target="_blank" style="display:inline-block;padding:10px 18px;margin:4px 8px 4px 0;background:#4A90E2;color:#FFF;border-radius:7px;font-weight:600;text-decoration:none;">πŸ’Ό LinkedIn</a>
223
+ <a href="mailto:{portfolio.profile['email']}" style="display:inline-block;padding:10px 18px;margin:4px 8px;background:#FF6B6B;color:#FFF;border-radius:7px;font-weight:600;text-decoration:none;">βœ‰οΈ Email</a>
 
 
 
 
 
 
224
  </div>
225
+ <div style="color: #FFA500; font-size: 1.04rem; text-align: center; font-style: italic; margin-top: 14px;">
226
  "Building AI with consciousness, creating technology with soul"
227
+ </div>
228
  </div>
229
  """)
 
230
  with gr.Column():
231
  gr.HTML("""
232
+ <div style="background:#FFF;border-radius:10px;padding:15px;">
233
+ <h2 style="color:#FFA500;">πŸ“„ Download Resume</h2>
234
+ <div style="margin-bottom:12px; color:#232323;">
235
  Get my complete resume with detailed project information and achievements.
236
+ </div>
237
  </div>
238
  """)
239
  resume_file = gr.File(label="Resume", value="resume_sreelekha_putta.pdf", interactive=False)
 
242
 
243
  if __name__ == "__main__":
244
  demo = create_interface()
245
+ print("πŸš€ Launching Sreelekha Putta's Portfolio – consistent, clear visibility on all screens!")
246
  demo.launch(share=True)