A full-stack AI-powered web application that helps students learn smarter β featuring an AI Chat tutor, MCQ Practice generator, and Notes Summarizer.
| Feature | Description |
|---|---|
| π¬ AI Chat | Ask any study question and get a structured answer with a direct response and explanation |
| π Simplify Answer | Rewrites any AI response in simple, easy-to-understand language |
| π MCQ Generator | Enter any topic and instantly get 5 multiple choice questions with answers and explanations |
| π Notes Summarizer | Paste your notes and get bullet-point summaries and key takeaways |
| Layer | Technology |
|---|---|
| Frontend | React.js |
| Backend | Python + Flask |
| AI Model | Groq API (Llama 3.1 β free) |
| Styling | Custom CSS (dark theme) |
AI Study Assistant/
βββ backend/
β βββ app.py # Flask API with 4 endpoints
β βββ requirements.txt # Python dependencies
β βββ .env # API key (not uploaded to GitHub)
βββ frontend/
β βββ public/
β β βββ index.html
β βββ src/
β β βββ App.js # Main app with tab navigation
β β βββ App.css # Global styles
β β βββ components/
β β βββ Chat.js # AI Chat component
β β βββ MCQ.js # MCQ Practice component
β β βββ Summarizer.js # Notes Summarizer component
β βββ package.json
β βββ .env # API URL (not uploaded to GitHub)
βββ .gitignore
βββ README.md
Make sure you have these installed:
- Python 3.8 or above β python.org
- Node.js 16 or above β nodejs.org
- A free Groq API key β console.groq.com
git clone https://github.com/your-username/AI_Study_Assistant.git
cd AI_Study_Assistantcd backendInstall dependencies:
pip install flask flask-cors groq python-dotenvCreate a .env file inside the backend folder:
GROQ_API_KEY=your_groq_api_key_here
Start the backend server:
python app.pyThe backend will run at: http://127.0.0.1:8000
To confirm it is working, open your browser and go to:
http://127.0.0.1:8000
You should see: {"status": "ok", "message": "AI Study Assistant API is running"}
Open a new terminal and run:
cd frontendInstall dependencies:
npm installCreate a .env file inside the frontend folder:
REACT_APP_API_URL=http://127.0.0.1:8000
Start the frontend:
npm startThe app will open automatically at: http://localhost:3000
| File | Variable | Description |
|---|---|---|
backend/.env |
GROQ_API_KEY |
Your free Groq API key from console.groq.com |
frontend/.env |
REACT_APP_API_URL |
URL of the running backend (default: http://127.0.0.1:8000) |
β οΈ Never share your.envfiles. They are excluded from GitHub via.gitignore.
You need two terminals open at the same time:
Terminal 1 β Start Backend:
cd backend
python app.pyTerminal 2 β Start Frontend:
cd frontend
npm startThen open http://localhost:3000 in your browser.
| Method | Endpoint | Description |
|---|---|---|
| GET | / |
Health check |
| POST | /chat |
Ask a study question |
| POST | /simplify |
Simplify an AI response |
| POST | /generate-mcq |
Generate 5 MCQs for a topic |
| POST | /summarize |
Summarize study notes |
POST /chat
{
"question": "What is Newton's Second Law?"
}{
"answer": "**Direct Answer:**\nNewton's Second Law states that Force = Mass Γ Acceleration.\n\n**Explanation:**\nThis means the greater the force applied to an object, the greater its acceleration..."
}- AI Chat β Type
What is photosynthesis?β Click Ask - MCQ Practice β Type
French Revolutionβ Click Generate MCQs β Select answers - Notes Summarizer β Paste any paragraph of text β Click Summarize Notes
The Lean Canvas and Project Presentation are combined into one PPT file and have been pushed to this repository for viewing and reference.
| Problem | Fix |
|---|---|
Failed to fetch error in app |
Make sure the backend is running (python app.py) |
ERR_CONNECTION_REFUSED |
Backend is not running β start it first |
model_decommissioned error |
Change model in app.py to llama-3.1-8b-instant |
npm install fails |
Run npm install --legacy-peer-deps |
| Port 3000 already in use | Press Y when asked to use another port |
The AI Study Assistant is deployed and accessible online:
Website: https://shravanis-ai-study-assistant.vercel.app/
This project is open source and available under the MIT License.
Made with β€οΈ by Shravani Thouta
If you found this helpful, give it a β on GitHub!



