Spaces:
Sleeping
Sleeping
| import os | |
| import streamlit as st | |
| from st_pages import add_page_title, get_nav_from_toml | |
| from app.backend.constant import LEADERBOARD_MAP | |
| from app.backend.data_engine import DataEngine | |
| # init pages | |
| with open("app/ui/pages/data_page.py", "r", encoding="utf-8") as f: | |
| data_page = f.read() | |
| for leaderboard, group_names in LEADERBOARD_MAP.items(): | |
| for group_name in group_names: | |
| path = os.path.join("app/ui/pages", f"{group_name}.py") | |
| with open(path, "w", encoding="utf-8") as f: | |
| f.write(data_page.replace("$group_name$", group_name) | |
| ) | |
| # init global data engine | |
| data_engine = DataEngine() | |
| data_engine.jsons_to_df() | |
| st.session_state["data_engine"] = data_engine | |
| st.set_page_config(layout="wide") | |
| # load page tree | |
| nav = get_nav_from_toml( | |
| "app/ui/pages_sections.toml" | |
| ) | |
| pg = st.navigation(nav) | |
| add_page_title(pg) | |
| pg.run() | |