# import sys # from pathlib import Path # import os # import gdown # import streamlit as st # # Set page config - must be first Streamlit command # st.set_page_config( # page_title="TrueCheck - Fake News Detection", # page_icon="📰", # layout="wide" # ) # MODEL_PATH = "models/saved/final_model.pt" # # You need to replace this with the direct download link of your model file # # To get the direct link: Right-click your model file in Google Drive -> Get link -> Make sure it's set to "Anyone with the link can view" # # Then replace the file ID in the URL below # GOOGLE_DRIVE_FILE_ID = "1xhYKuC5_Yri3mm3Ejt-SpB2WAVUTJvc_" # Replace with your actual file ID # GOOGLE_DRIVE_URL = f"https://drive.google.com/uc?id={GOOGLE_DRIVE_FILE_ID}" # @st.cache_resource # def download_model(): # """Download model from Google Drive if not exists.""" # if not os.path.exists(MODEL_PATH): # os.makedirs(os.path.dirname(MODEL_PATH), exist_ok=True) # with st.spinner("Downloading model from Google Drive..."): # try: # gdown.download(GOOGLE_DRIVE_URL, MODEL_PATH, quiet=False) # st.success("Model downloaded successfully!") # except Exception as e: # st.error(f"Failed to download model: {str(e)}") # st.error("Please check your Google Drive link and make sure the file is publicly accessible.") # return False # return True # # Add src directory to Python path # src_path = Path(__file__).parent / "src" # sys.path.append(str(src_path)) # if __name__ == "__main__": # # Download model first # if download_model(): # # Import and run the main app # from src.app import main # main() # else: # st.error("Cannot start the application without the model file.") import sys from pathlib import Path import os import gdown import streamlit as st # Set page config - must be first Streamlit command st.set_page_config( page_title="TrueCheck - Fake News Detection", page_icon="📰", layout="wide", initial_sidebar_state="expanded" ) # Custom CSS for modern styling st.markdown(""" """, unsafe_allow_html=True) MODEL_PATH = "models/saved/final_model.pt" GOOGLE_DRIVE_FILE_ID = "1xhYKuC5_Yri3mm3Ejt-SpB2WAVUTJvc_" GOOGLE_DRIVE_URL = f"https://drive.google.com/uc?id={GOOGLE_DRIVE_FILE_ID}" @st.cache_resource def download_model(): """Download model from Google Drive if not exists.""" if not os.path.exists(MODEL_PATH): os.makedirs(os.path.dirname(MODEL_PATH), exist_ok=True) with st.spinner("Downloading model from Google Drive..."): try: gdown.download(GOOGLE_DRIVE_URL, MODEL_PATH, quiet=False) st.markdown('
', unsafe_allow_html=True) except Exception as e: st.markdown(f' ', unsafe_allow_html=True) st.markdown(' ', unsafe_allow_html=True) return False return True # Add src directory to Python path src_path = Path(__file__).parent / "src" sys.path.append(str(src_path)) # Sidebar navigation st.sidebar.title("TrueCheck") st.sidebar.markdown("---") page = st.sidebar.radio( "Navigate", ["Home", "Team", "About", "Terms of Use", "Privacy Policy"], label_visibility="collapsed" ) # SVG icon for sidebar st.sidebar.markdown(""" """, unsafe_allow_html=True) if __name__ == "__main__": if page == "Home": if download_model(): from src.app import main main() else: st.markdown(' ', unsafe_allow_html=True) elif page == "Team": from src.team import main main() elif page == "About": from src.about import main main() elif page == "Terms of Use": from src.terms_of_use import main main() elif page == "Privacy Policy": from src.privacy_policy import main main()