Welcome to the Streamlit community, and thanks for your thoughtful question! In Streamlit, navigation between pages (without a full page refresh) and seamless data transfer is best achieved using Streamlit’s multipage app architecture with st.Page and st.navigation, and by storing data in st.session_state. However, it’s important to note that Streamlit always reruns the script on navigation, but session state persists data across pages.