An open API service indexing awesome lists of open source software.

https://github.com/joemathew2004/study-buddy

Study Buddy is a user-friendly AI-powered web app that helps students generate safe, factual study notes and Q&A on any topic. It features user accounts, study history, and strong content safety filtersβ€”making learning interactive and secure.
https://github.com/joemathew2004/study-buddy

ai chatbot content-safety education flask groq learning project python qna study webapp

Last synced: 3 months ago
JSON representation

Study Buddy is a user-friendly AI-powered web app that helps students generate safe, factual study notes and Q&A on any topic. It features user accounts, study history, and strong content safety filtersβ€”making learning interactive and secure.

Awesome Lists containing this project

README

          

# Study Buddy

An AI-powered educational app that generates safe, factual study materials and Q&A for any topic, with user accounts and history tracking.

---

## Images

Below are some screenshots of Study Buddy in action:

![Home Page](images/Register.png)
![Notes Generated](images/Notes%20Generation.png)
![Q&A Example](images/Q%20and%20A.png)

---

## Features

- πŸ” 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

---

## Quick Start

1. **Clone the repository:**
```bash
git clone https://github.com/yourusername/study-buddy.git
cd study-buddy
```

2. **Install dependencies:**
```bash
pip install -r requirements.txt
```

3. **Set up environment variables:**
```bash
cp .env.example .env
# Edit .env and add your GROQ API key
```

4. **Run the application:**
```bash
# Start the backend server
python server.py

# Start the frontend server (in another terminal)
python -m http.server 8000
```

5. **Open your browser:**
[http://localhost:8000/app.html](http://localhost:8000/app.html)

---

## Project Structure

```
β”œβ”€β”€ 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
└── ...
```

---

## Usage

1. Register or log in with your credentials
2. Enter any educational topic in the search box
3. Get AI-generated notes and Q&A
4. View your study history in the sidebar
5. Enjoy interesting facts about your topics

---

## Safety Features

- 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

---

## Technologies Used

- **Backend:** Python, Flask, SQLite
- **Frontend:** HTML, CSS, JavaScript
- **AI:** Groq API (Llama 3)
- **Styling:** Font Awesome, Google Fonts

---

## API Key

You need a GROQ API key to run this application. Get one from [Groq Console](https://console.groq.com/) and add it to your `.env` file.

---

## License

This project is for educational purposes only.