Spaces:
Sleeping
Sleeping
File size: 3,746 Bytes
ce81e14 bf2ed00 ce81e14 8d05c91 ce81e14 bf2ed00 ce81e14 a12efc5 ce81e14 a12efc5 ce81e14 a12efc5 ce81e14 a12efc5 ce81e14 a12efc5 ce81e14 a12efc5 ce81e14 bf2ed00 ce81e14 a12efc5 ce81e14 dad3f7b bf2ed00 ce81e14 bf2ed00 dad3f7b 8d05c91 ce81e14 bf2ed00 8d05c91 bf2ed00 90fec3d bf2ed00 90fec3d ce81e14 8d05c91 a12efc5 bf2ed00 ce81e14 8d05c91 cee372b ce81e14 bf2ed00 ce81e14 90fec3d ce81e14 90fec3d ce81e14 90fec3d ce81e14 bf2ed00 ce81e14 bf2ed00 ce81e14 90fec3d ce81e14 bf2ed00 ce81e14 bf2ed00 cee372b ce81e14 90fec3d ce81e14 bf2ed00 ce81e14 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
import json
import random
import gradio as gr
import base64
# Load JSON dataset
with open("gita_techies_18_chapters.json", "r", encoding="utf-8") as f:
gita_for_techies = json.load(f)
# Encode background image
with open("bg.png", "rb") as img_file:
b64_bg_img = base64.b64encode(img_file.read()).decode()
# Function to return one random entry
def get_gita_tech():
entry = random.choice(gita_for_techies)
return f"""
<div class="content">
<h2>📘 Chapter {entry["chapter_number"]}</h2>
<p><b>🌼 Spiritual Meaning (EN):</b><br>{entry["spiritual_meaning_en"]}</p>
<p><b>🪔 ఆధ్యాత్మిక అర్థం (TE):</b><br>{entry["spiritual_meaning_te"]}</p>
<p><b>💻 Tech Meaning (EN):</b><br>{entry["tech_meaning_en"]}</p>
<p><b>🌾 టెక్ అర్థం (TE):</b><br>{entry["tech_meaning_te"]}</p>
<p><b>🧠 Lesson for Techies:</b><br>{entry["lesson_for_techies"]}</p>
<p><b>⚙️ Tech Stack Analogy:</b><br>{entry["tech_stack_analogy"]}</p>
<p><b>🧘 Daily Reminder (EN):</b><br><i>{entry["daily_reminder_en"]}</i></p>
<p><b>🧘 రోజువారీ స్మరణ (TE):</b><br><i>{entry["daily_reminder_te"]}</i></p>
<p><b>🧾 Code Snippet:</b></p>
<pre><code>{entry["code_snippet"]}</code></pre>
<hr style="margin-top: 30px;">
<p style="text-align:center;font-size:0.9rem;">🌸 Made with 💜 by <b>Sreelekha Putta</b></p>
</div>
<style>
.content {{
background: rgba(80, 60, 120, 0.3); /* ✨ lighter violet */
padding: 20px;
border-radius: 16px;
max-width: 800px;
width: 92%;
margin: 0 auto 30px auto;
box-shadow: 0 0 30px rgba(200, 150, 255, 0.3); /* ✨ soft glow */
color: #ffffff !important;
font-family: 'Segoe UI', sans-serif;
font-size: 1rem;
line-height: 1.8;
word-wrap: break-word;
overflow-wrap: break-word;
text-shadow: 1px 1px 5px rgba(0, 0, 0, 1);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}}
h2 {{
font-size: 1.5rem;
margin-bottom: 16px;
color: #d9b2ff;
}}
pre {{
background: #0e0e23;
color: #e0f2fe;
padding: 12px;
border-radius: 8px;
font-size: 0.95rem;
overflow-x: auto;
box-shadow: 0 0 10px rgba(255,255,255,0.1);
text-shadow: none;
}}
</style>
"""
# CSS with background
css = f"""
body {{
margin: 0;
padding: 0;
min-height: 100vh;
background-image: url("data:image/png;base64,{b64_bg_img}");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
background-attachment: fixed;
font-family: 'Segoe UI', sans-serif;
}}
body::before {{
content: "";
position: fixed;
inset: 0;
background: rgba(0,0,30,0.7);
z-index: -1;
}}
h1 {{
text-align: center;
color: #e7c1ff;
font-size: 2.8rem;
font-weight: 700;
margin: 30px 0 20px 0;
text-shadow: 0 0 15px #c084fc;
}}
button {{
background-color: #a855f7;
border-radius: 12px;
color: white;
font-weight: 600;
font-size: 1.3rem;
padding: 0.8rem 2.4rem;
border: none;
cursor: pointer;
margin-bottom: 30px;
box-shadow: 0 0 18px #a78bfa88;
}}
button:hover {{
background-color: #d8b4fe;
color: black;
box-shadow: 0 0 25px #f0d0ff;
}}
"""
# Gradio interface
with gr.Blocks(css=css) as app:
gr.Markdown("<h1>💻 Bhagavad Gita for Techies 💻</h1>")
output = gr.HTML()
btn = gr.Button("🔁 Get Wisdom Tip")
btn.click(fn=get_gita_tech, outputs=output)
app.launch()
|