sbsmapper / app.py
georad's picture
Update app.py
7b883db verified
raw
history blame
2.34 kB
import streamlit as st
# --- Page Configuration ---
# This sets the title and icon that appear in the default header
st.set_page_config(
page_title="SBS V2.0 mapper", # This title will appear in the sticky header
page_icon=":material/keyboard:", # This icon can also appear in the header
layout="wide" # Optional: Use wide layout
)
# --- Custom CSS for Sticky Default Header ---
st.markdown("""
<style>
/* Make the default Streamlit header sticky */
header {
position: sticky;
top: 0; /* Stick to the top edge */
z-index: 100; /* Ensure the header is above other content */
background-color: rgb(240, 242, 246); /* Match Streamlit's default header background color */
/* Add padding if needed, though sticky often works well with default layout */
/* padding-top: 1rem; */
/* padding-bottom: 1rem; */
}
/* Optional: Add some padding to the top of the main content
so it doesn't start hidden behind the sticky header */
/* This might be handled automatically by position: sticky, but can help if needed */
/*
.stApp > div:first-child {
padding-top: XXpx; // Replace XX with the height of your header
}
*/
</style>
""", unsafe_allow_html=True)
# --- App Content (will scroll below the sticky header) ---
# The logo placed here will likely appear in the sidebar or main body,
# not in the sticky default header. Use st.set_page_config for the header icon.
st.logo(image="images/menu_book_60dp_75FBFD.png")
st.sidebar.header("SBS V2.0 mapper")
st.sidebar.write("(work in progress)")
st.sidebar.text("Demo by JA-RAD")
# Note: st.title and st.subheader here will appear *below* the sticky header,
# as they are part of the main app content flow.
st.title("Map descriptions to SBS codes with Sentence Transformer + Reasoning")
st.subheader("Select specific Chapter for quicker results")
# --- NAVIGATION SETUP ---
# Keep your existing navigation setup
type_text_page = st.Page(
page="pages/type_text.py",
title="DEMO (work in progress)",
icon=":material/keyboard:",
default=True,
)
pg = st.navigation(pages=[type_text_page]) # WITHOUT SECTIONS
pg.run()
# Add some extra content to make the page scrollable for testing
for i in range(50):
st.write(f"This is scrollable content line {i}")