An AI-powered educational app that generates safe, factual study materials and Q&A for any topic, with user accounts and history tracking.
Below are some screenshots of Study Buddy in action:
- 🔐 User registration & login
- 📚 AI-generated study notes and Q&A
- 📝 Study history tracking
- 💡 Interesting facts for each topic
- 🛡️ Content safety & inappropriate content blocking
- ✅ Famous person validation
- 🎨 Colorful, interactive UI
-
Clone the repository:
git clone https://github.com/yourusername/study-buddy.git cd study-buddy -
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
cp .env.example .env # Edit .env and add your GROQ API key -
Run the application:
# Start the backend server python server.py # Start the frontend server (in another terminal) python -m http.server 8000
-
Open your browser: http://localhost:8000/app.html
├── app.html # Main frontend HTML
├── app.py # (Optional) Additional backend logic
├── check_db.py # Script to inspect the database
├── config.js # Frontend API config
├── config.py # (Optional) Backend config
├── index.html # Landing page
├── qa-styles.css # Q&A section styles
├── requirements.txt # Python dependencies
├── script.js # Main frontend JS
├── server.py # Flask backend
├── study_buddy.db # SQLite database (auto-created)
├── style.css # General styles
└── ...
- Register or log in with your credentials
- Enter any educational topic in the search box
- Get AI-generated notes and Q&A
- View your study history in the sidebar
- Enjoy interesting facts about your topics
- Blocks inappropriate content and bad language
- Only allows famous historical figures and educational topics
- Prevents saving failed or inappropriate queries to history
- Shows helpful error messages with topic suggestions
- Backend: Python, Flask, SQLite
- Frontend: HTML, CSS, JavaScript
- AI: Groq API (Llama 3)
- Styling: Font Awesome, Google Fonts
You need a GROQ API key to run this application. Get one from Groq Console and add it to your .env file.
This project is for educational purposes only.


