aita_core.app — Streamlit Application

The main Streamlit application with login, chat, and page routing.

Entry Point

aita_core.app.main()[source]

Pages

aita_core.app.login_page()[source]
aita_core.app.chat_page()[source]

Authentication Helpers

aita_core.app.resolve_file_path(stored_path)[source]

The app uses JWT cookies for persistent authentication across browser sessions. When Google OAuth is enabled, the login page shows a “Sign in with Google” button that initiates the PKCE OAuth flow. When disabled, it falls back to a simple student ID text input.

Chat Page Features

  • Multi-turn conversation with full chat history

  • Source citations with expandable section showing referenced materials

  • PDF downloads for local course documents

  • Clickable links for web-based sources (e.g., Wikibook chapters)

  • Example prompt buttons shown when chat is empty (configurable per week)

  • Week selector in sidebar for testing week-aware behavior