gabrielaltay's picture
update
e812ccd
raw
history blame
1.23 kB
"""Main Streamlit application for LegisQA"""
import streamlit as st
from legisqa_local.config.settings import STREAMLIT_CONFIG, setup_environment
from legisqa_local.components.sidebar import render_sidebar
from legisqa_local.tabs.rag_tab import RAGTab
from legisqa_local.tabs.rag_sbs_tab import RAGSideBySideTab
from legisqa_local.tabs.guide_tab import GuideTab
def main():
"""Main application function"""
# Configure Streamlit
st.set_page_config(**STREAMLIT_CONFIG)
# Setup environment
setup_environment()
# Main content
st.title(":classical_building: LegisQA :classical_building:")
st.header("Query Congressional Bills")
# Sidebar
with st.sidebar:
render_sidebar()
# Create tab instances
rag_tab = RAGTab()
rag_sbs_tab = RAGSideBySideTab()
guide_tab = GuideTab()
# Create tabs
query_rag_tab, query_rag_sbs_tab, guide_tab_ui = st.tabs([
rag_tab.name,
rag_sbs_tab.name,
guide_tab.name,
])
# Render tab content
with query_rag_tab:
rag_tab.render()
with query_rag_sbs_tab:
rag_sbs_tab.render()
with guide_tab_ui:
guide_tab.render()
if __name__ == "__main__":
main()