Overview
AI-powered study assistant built for university thesis project. Led a 5-person team to create a platform that transforms student notes into personalized learning materials.
Key Features
Document Processing
- Multiple formats: PDF, DOCX, TXT, PPTX support
- Intelligent parsing: Extract text while preserving structure
- Batch processing: Upload multiple files at once
- Progress tracking: Real-time upload and processing status
AI-Generated Content
- Flashcards: Automatically generate Q&A pairs from notes
- Quizzes: Create multiple-choice and open-ended questions
- Summaries: Condense long documents into key points
- Study guides: Structured outlines of main concepts
Conversation Management
- Hybrid context: Rolling summaries + recent messages
- Memory efficiency: Prevent AI context overload while maintaining continuity
- Personalized responses: Adapts to student's learning style
- Follow-up questions: Clarifications and deeper explanations
Technical Achievements
Team Leadership
- Led 5-person team through full development cycle
- Coordinated frontend/backend development
- Established coding standards and review process
- Managed deployment and production issues
API Architecture
- 30+ Django REST endpoints covering all features
- JWT authentication with token refresh
- File upload handling with validation and size limits
- Rate limiting to prevent abuse
AI Context Management
The interesting challenge was managing conversation context. We implemented a hybrid approach:
- Rolling summaries: Compress old messages to maintain topic continuity
- Recent messages: Keep last N messages in full for immediate context
- Smart truncation: Remove middle messages when hitting limits
This prevents AI overload while maintaining conversation quality - turns out context limits matter just like they do for humans cramming at 2 AM.
Deployment
- Dockerized: Full stack containerization
- Render deployment: Free-tier production hosting
- Environment management: Secure secrets handling
- Database migrations: Automated with Django
What I Learned
Leading a team is different from solo development. Clear communication, code reviews, and documentation become essential when multiple people are working on the same codebase.
Also learned that AI integration isn't just about API calls - managing context, handling rate limits, and providing good UX when AI is thinking all require careful design.
Tech Stack
Backend: Django, Django REST Framework, Python Frontend: React, TypeScript, Axios AI: OpenRouter API (multi-model support) Database: PostgreSQL File Processing: PyPDF2, python-docx, python-pptx Deployment: Docker, Render Testing: pytest, React Testing Library