AI-powered study assistant for notes, flashcards, quizzes, uploaded study material, and progress tracking.
StudyMate AI is an open-source, offline study assistant built with Python and Streamlit. It helps students revise smarter by generating explanations, key points, flashcards, quizzes, downloadable notes, and progress history.
The app works without API keys and uses local SQLite storage for progress tracking.
- 📖 Generate clear explanations for study topics
- 🎯 Generate key points for revision
- 🎴 Create interactive flashcards with flip navigation
- 🧪 Generate multiple-choice quizzes with instant scoring
- 📊 Save quiz progress using SQLite
- 📥 Download generated study notes as a text file
Students can upload their own .txt or .md study material. StudyMate AI then generates:
- Explanation
- Key points
- Flashcards
- Quiz questions
- Downloadable notes
- Progress history entry showing the uploaded file source
- 👤 Student name input
- Personalized welcome message
- Personalized progress dashboard title
- Fixed dark theme
- Animated AI-style background effects
- Polished buttons and hover effects
- Clean Streamlit interface
- Python
- Streamlit
- SQLite
- JSON
- HTML/CSS inside Streamlit
- Rule-based offline content generation
studymate-ai/
├── app.py
├── requirements.txt
├── README.md
├── .gitignore
├── .env.example
│
├── .streamlit/
│ └── config.toml
│
├── utils/
│ ├── __init__.py
│ ├── generator.py
│ ├── database.py
│ └── validation.py
│
├── data/
│ └── sample_topics.json
│
└── assets/
└── README_assets.txt
git clone https://github.com/lizz-dev/studymate-ai.git
cd studymate-aiFor Windows:
python -m venv venv
venv\Scripts\activateFor macOS/Linux:
python -m venv venv
source venv/bin/activatepip install -r requirements.txtstreamlit run app.pyThen open:
http://localhost:8501
All required Python packages are listed in:
requirements.txt
Main dependency:
streamlit
The app uses Python’s built-in SQLite support for local progress tracking.
StudyMate AI works offline and does not require any API key.
An .env.example file is included for future API integration.
Example:
# StudyMate AI currently works offline.
# Optional future API key:
OPENAI_API_KEY=your_api_key_hereDo not upload real .env files to GitHub.
- Enter your student name in the sidebar.
- Type a topic such as
Photosynthesis. - Select difficulty level.
- Choose number of flashcards and quiz questions.
- Click Generate Study Materials.
- Review explanation, key points, flashcards, and quiz.
- Submit quiz and view your score.
- Download notes.
- Open Progress History to see saved attempts.
- Upload a
.txtor.mdfile containing study material. - Click Generate Study Materials.
- StudyMate AI creates explanation, key points, flashcards, and quiz questions from the uploaded file.
- Submit the quiz.
- Progress History records the uploaded file source.
- Download the generated study notes.
StudyMate AI uses SQLite to save local progress.
It stores:
- Topic or uploaded file name
- Difficulty level
- Number of flashcards
- Number of quiz questions
- Quiz score
- Percentage
- Date/time
The app includes:
- Empty topic checks
- Uploaded file validation
- Friendly error messages
- Quiz reset after new generation
- Protection against duplicate progress saves
.gitignoreto avoid uploading virtual environments, cache files, databases, and secret files
Suggested screen recording flow:
- Open StudyMate AI.
- Enter student name.
- Generate study materials from a typed topic.
- Show explanation and key points.
- Flip through flashcards.
- Submit quiz and show score feedback.
- Upload a
.txtnotes file. - Generate study materials from uploaded notes.
- Download notes.
- Open Progress History and show saved attempts.
- PDF upload support
- Secure login/signup with password hashing
- Separate student profiles
- Spaced repetition for flashcards
- AI API integration using
.env - Export study reports as PDF
- More advanced progress analytics
- Multi-language support
StudyMate AI is an offline AI-style study assistant that helps students revise smarter. A student can type a topic or upload their own notes, and the app generates explanations, key points, flashcards, quizzes, downloadable notes, and progress history. It is beginner-friendly, open-source, GitHub-ready, and works without API keys.
Created for an open-source AI app-building competition.