import streamlit as st import json def app(): st.header("Career Priorities") st.write("Rate the following aspects of your career according to your priority, and provide reasons for your choices.") career_priorities = [ "Money", "Benefits", "Creative control", "Flexible work options", "Proximity to home/school/daycare", "Challenge", "Social connections and camaraderie", "Measurable success", ] if 'priorities_data' not in st.session_state: st.session_state.priorities_data = {aspect: {"rating": None, "reason": ""} for aspect in career_priorities} for aspect in career_priorities: with st.expander(f"Rate and Explain: {aspect}"): current_rating = st.session_state.priorities_data[aspect]["rating"] current_reason = st.session_state.priorities_data[aspect]["reason"] st.session_state.priorities_data[aspect]["rating"] = st.slider( "Priority Rating", min_value=1, max_value=8, value=current_rating if current_rating else 1, key=f"slider_{aspect}" ) st.session_state.priorities_data[aspect]["reason"] = st.text_area( "Why is this important to you?", value=current_reason, key=f"text_{aspect}" ) if st.button('Save Answers'): save_priorities_data(st.session_state.priorities_data) st.success('Career Priorities saved successfully!') def save_priorities_data(data): """Save the priorities data to a JSON file.""" with open('career_priorities_data.json', 'w') as file: json.dump(data, file, indent=4) if __name__ == "__main__": app()