How udayreddy-s/ai-study works
AI Study Companion is a Streamlit app for studying uploaded PDF and DOCX notes. A student uploads notes, the app extracts their text and keeps it in session state, then offers summary and translation, quiz generation, flashcards, and a notes-grounded tutor chat. Each generation feature calls Gemini and displays its result; summaries can also be downloaded. The runtime is concentrated in app.py, so the components below represent responsibilities within that file, not separate services. Evidence for the interactions is the app.py excerpt.
Main entry points: app.py Streamlit interface
Components 10
Student interaction
- Streamlit interface
app.py - Session state
app.py
Notes handling
- Document extraction
app.py
Study features
- Summary and translation
app.py - Quiz generation
app.py - Flashcard generation
app.py - Tutor chat
app.py - Summary download
app.py
Other components
- Student
- Gemini model
Connections 17
- Student → Streamlit interface: uploads and asks
app.py - Streamlit interface → Document extraction: extracts notes
app.py - Streamlit interface → Session state: stores notes
app.py - Summary and translation → Session state: reads notes
app.py - Quiz generation → Session state: reads notes
app.py - Flashcard generation → Session state: reads notes
app.py - Tutor chat → Session state: reads notes
app.py - Summary and translation → Gemini model: generates summary
app.py - Quiz generation → Gemini model: generates quiz
app.py - Flashcard generation → Gemini model: generates cards
app.py - Tutor chat → Gemini model: answers question
app.py - Summary and translation → Streamlit interface: displays result
app.py - Quiz generation → Streamlit interface: displays result
app.py - Flashcard generation → Streamlit interface: displays result
app.py - Tutor chat → Streamlit interface: displays reply
app.py - Summary and translation → Summary download: provides text
app.py - Summary download → Student: downloads summary
app.py