Spaces:
Sleeping
Sleeping
import streamlit as st | |
import requests | |
import json | |
# URL to the JSON file | |
JSON_URL = "https://cdn.statically.io/gh/gita/gita/main/data/verse.json" | |
# Fetch the JSON data | |
def fetch_data(): | |
response = requests.get(JSON_URL) | |
response.raise_for_status() | |
return response.json() | |
# Streamlit app | |
st.title("Bhagavad Gita") | |
# Fetch and display chapters and verses | |
data = fetch_data() | |
# Extract chapter details | |
chapters = {int(chapter["chapter_number"]): chapter for chapter in data["chapters"]} | |
# Select Chapter | |
chapter_id = st.selectbox("Select Chapter", list(chapters.keys()), format_func=lambda x: f"Chapter {x}") | |
# Display chapter summary | |
chapter_summary = chapters[chapter_id].get('chapter_summary', 'No summary available') | |
st.subheader(f"Chapter {chapter_id}") | |
st.markdown(f"**Summary:**\n\n{chapter_summary}") | |
# Select Verse | |
verses = {int(verse["verse_number"]): verse for verse in chapters[chapter_id]['verses']} | |
verse_number = st.selectbox("Select Verse", list(verses.keys())) | |
# Display selected verse | |
selected_verse = verses[verse_number] | |
st.markdown(f"**Verse {verse_number}**") | |
st.markdown(f"**Sanskrit:**\n\n{selected_verse['text']}") | |
st.markdown(f"**Translation:**\n\n{selected_verse['translation']}") | |
# Display all verses in the selected chapter | |
st.subheader("All Verses in this Chapter") | |
for verse_number, verse in sorted(verses.items()): | |
st.markdown(f"**Verse {verse_number}**") | |
st.markdown(f"**Sanskrit:** {verse['text']}") | |
st.markdown(f"**Translation:** {verse['translation']}") | |
st.markdown("---") | |