Skip to content

ek-pineapple/HackMIT_2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

30 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ StudyAI - AI-Powered Study Assistant

Voice-first AI study companion that transforms your notes into interactive learning sessions

Note: To view commit history, also view this repo: https://github.com/parthib-paul/HackMIT

Python Flask Anthropic License

✨ Features

  • 🎀 Voice-First Interface: Answer questions using speech recognition
  • πŸ“š Smart File Upload: Support for PDF, TXT, DOC, DOCX files
  • πŸ€– AI Question Generation: Anthropic Claude creates contextual questions
  • πŸ“Š Real-Time Grading: AI-powered answer evaluation with detailed feedback
  • πŸ“ˆ Progress Tracking: Visual progress bars and accuracy metrics
  • 🎨 Beautiful UI: xAI-inspired design with dynamic particle background
  • πŸ”„ Interactive Sessions: Follow-up questions and adaptive learning

πŸš€ Quick Start

Prerequisites

  • Python 3.8 or higher
  • Git
  • Anthropic API key (optional, has fallback mode)

1. Clone the Repository

git clone https://github.com/parthib-paul/HackMIT.git
cd HackMIT

2. Install Dependencies

pip install -r requirements.txt

3. Set Up Environment Variables (Optional)

Create a .env file in the project root:

You will need to add an anthropic_api_key in env file and add a open_ai api key.

Note: The app works without API keys using smart fallback questions!

4. Run the Application

python3 app.py

5. Open in Browser

Navigate to: http://localhost:8080

🎯 How to Use

  1. Upload Study Materials: Drag & drop or click to upload your notes (PDF, TXT, DOC, DOCX)
  2. Start Study Session: Click "Start Study Session" to generate AI questions
  3. Answer Verbally: Use the microphone to record your answers
  4. Get AI Feedback: Receive instant grading and suggestions
  5. Track Progress: Monitor your accuracy and improvement over time

πŸ› οΈ Technical Stack

Backend

  • Flask: Web framework
  • Anthropic Claude: AI question generation and grading
  • File Processing: Multi-format document parsing

Frontend

  • HTML5/CSS3: Modern web standards
  • Tailwind CSS: Utility-first styling
  • Web Speech API: Voice recognition
  • JavaScript: Interactive functionality

AI Integration

  • Anthropic API: Claude-3-Sonnet for intelligent question generation
  • Fallback System: Smart rule-based questions when AI unavailable
  • Context-Aware: Questions based on actual uploaded content

πŸ“ Project Structure

HackMIT/
β”œβ”€β”€ app.py                 # Main Flask application
β”œβ”€β”€ requirements.txt       # Python dependencies
β”œβ”€β”€ .env                  # Environment variables (create this)
β”œβ”€β”€ README.md             # This file
β”œβ”€β”€ templates/
β”‚   └── index.html        # Main UI template
β”œβ”€β”€ sample_content.txt    # Sample study material
└── llm_integration.py    # AI integration utilities

πŸ”§ Configuration

Environment Variables

Variable Description Required
ANTHROPIC_API_KEY Anthropic API key for AI features No (has fallback)

Supported File Types

  • PDF: Portable Document Format
  • TXT: Plain text files
  • DOC: Microsoft Word documents
  • DOCX: Microsoft Word documents (newer format)

🎨 UI Features

  • Dynamic Background: Animated particles and floating shapes
  • Glass Morphism: Modern glass-effect cards
  • Responsive Design: Works on desktop and mobile
  • Dark Theme: Easy on the eyes for long study sessions
  • Smooth Animations: Polished user experience

πŸ€– AI Features

Question Generation

  • Contextual questions based on uploaded content
  • Multiple difficulty levels
  • Subject-specific terminology
  • Critical thinking prompts

Answer Grading

  • 1-10 scoring system
  • Detailed feedback
  • Improvement suggestions
  • Follow-up question recommendations

🚨 Troubleshooting

Common Issues

  1. Port Already in Use

    # Kill existing processes
    pkill -f "python3 app.py"
    # Or use a different port
    python3 app.py --port 3000
  2. File Upload Issues

    • Ensure file is in supported format
    • Check file size (recommended < 10MB)
    • Verify file is not corrupted
  3. Speech Recognition Not Working

    • Use Chrome/Edge for best compatibility
    • Allow microphone permissions
    • Check browser console for errors
  4. AI Features Not Working

    • Verify API key in .env file
    • Check internet connection
    • App will use fallback mode automatically

Getting Help

  • Check the browser console for JavaScript errors
  • Verify all dependencies are installed
  • Ensure Python 3.8+ is being used

🎯 HackMIT Submission

This project was built for HackMIT 2025 with the following highlights:

  • Innovation: Voice-first AI study assistant
  • Technical Excellence: Full-stack implementation with AI integration
  • User Experience: Beautiful, intuitive interface
  • Scalability: Modular architecture for easy expansion

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ž Contact


Built with ❀️ for HackMIT 2025

Transform your study sessions with AI-powered learning!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors