AI-powered educational content tools for students and educators. Transform your learning materials with intelligent summaries, translations, and interactive quizzes. Built with modern web technologies and deployed on Vercel for seamless performance.
- Smart Summaries: AI-powered text summarization for lecture notes, articles, and documents
- Global Translation: Translate content to 8+ languages (Spanish, French, German, Chinese, Japanese, Korean, Italian, Portuguese)
- Interactive Quizzes: AI-generated quizzes to test knowledge and reinforce learning
- File Support: Upload PDF, DOCX, TXT, CSV, XLSX files or paste text directly
- Sample Content: Try the features with pre-loaded educational content
- Responsive Design: Works seamlessly on desktop, tablet, and mobile devices
- FastAPI: High-performance Python web framework
- AI Integration: Hugging Face Transformers for summarization, OpenAI for translations
- File Processing: Support for multiple document formats
- Caching: Lightweight in-memory caching for API cost optimization
- HTML5/CSS3: Modern responsive design with Tailwind CSS
- JavaScript: Vanilla JS with async/await for API interactions
- Progressive Enhancement: Works without JavaScript, enhanced with it
- Python 3.8+
- Node.js (for frontend development)
- API keys for Hugging Face and OpenAI
- MongoDB (local or cloud instance)
cd backend
pip install -r requirements.txt
# Set environment variables
export HUGGINGFACE_API_KEY="your-huggingface-api-key"
export OPENAI_API_KEY="your-openai-api-key"
export MONGODB_URL="your-mongodb-connection-string"
# Run the server
uvicorn main:app --reload --host 0.0.0.0 --port 8000cd frontend
# No build process needed - static files
# Serve locally (optional)
npx http-server -p 3000Create a .env file in the backend directory:
HUGGINGFACE_API_KEY=your-huggingface-api-key
OPENAI_API_KEY=your-openai-api-key
MONGODB_URL=mongodb://localhost:27017/edusummarizer
- Frontend: Deployed on Vercel (static hosting)
- Backend: Deployed on Render (serverless)
- Database: MongoDB Atlas (cloud)
# Install Vercel CLI
npm install -g vercel
# Deploy frontend
cd frontend
vercel --prod- Connect your GitHub repository to Render
- Set build command:
pip install -r requirements.txt - Set start command:
uvicorn main:app --host 0.0.0.0 --port $PORT - Configure environment variables in Render dashboard
HUGGINGFACE_API_KEY: Your Hugging Face API keyOPENAI_API_KEY: Your OpenAI API keyMONGODB_URL: MongoDB connection stringGA_MEASUREMENT_ID: Your Google Analytics Measurement ID (see below)
- Go to Google Analytics: Visit analytics.google.com
- Create/Sign in to Account: Sign in with your Google account
- Set up a Property:
- Click "Create Property"
- Choose "Web" as platform
- Enter your website details (e.g., name: "EduSummarizer Hub", URL: your deployed domain)
- Get Measurement ID:
- After creating the property, go to "Admin" (gear icon)
- Under "Property", click "Data Streams"
- Click on your web data stream
- Copy the "Measurement ID" (format:
G-XXXXXXXXXX)
- Replace in Code: Replace
GA_MEASUREMENT_IDin all HTML files with your actual ID
Note: The Measurement ID is already implemented in the code - developer just need to replace the placeholder with the actual ID from their Google Analytics account.
EduSummarizerHub/
βββ backend/
β βββ main.py # FastAPI application
β βββ cache.py # In-memory caching
β βββ routes/
β β βββ summarize.py # Summarization endpoint
β β βββ translate.py # Translation endpoint
β β βββ quiz.py # Quiz generation endpoint
β β βββ upload.py # File upload processing
β βββ requirements.txt # Python dependencies
β βββ vercel.json # Vercel deployment config
βββ frontend/
β βββ index.html # Landing page
β βββ upload.html # Upload interface
β βββ summary.html # Summary display
β βββ quiz.html # Quiz interface
β βββ dashboard.html # User dashboard
β βββ script.js # Main JavaScript
β βββ sample-content.js # Demo content
β βββ styles.css # Custom styles
β βββ package.json # Node dependencies
β βββ vercel.json # Vercel deployment config
βββ docs/
β βββ screenshots/ # Application screenshots
β β βββ screenshot1.png # Landing page
β β βββ screenshot2.png # Upload interface
β β βββ backend.png # Backend architecture
β β βββ translator.png # Translation feature
β β βββ Screenshot 2025-11-03 115608.png # Dashboard
β βββ plan.md # Project planning
β βββ MVP.md # MVP specifications
βββ .gitignore # Git ignore rules
βββ vercel.json # Root Vercel config (frontend-only)
βββ README.md
Upload and process files
- Input: Multipart form data with file
- Output: Extracted text content
Generate AI summary
- Input:
{"text": "content to summarize"} - Output:
{"summary": "generated summary"}
Translate text
- Input:
{"text": "text to translate", "target_language": "es"} - Output:
{"translated_text": "translated content"}
Generate quiz questions
- Input:
{"summary": "summary text", "num_questions": 5} - Output:
{"questions": [...]}
- Try Samples: Click sample buttons on homepage to explore features without uploading
- Upload Content: Drag & drop files (PDF, DOCX, TXT, CSV, XLSX) or paste text directly
- Get Summary: AI generates concise, accurate summaries of your educational content
- Translate: Choose from 8+ languages (Spanish, French, German, Chinese, Japanese, Korean, Italian, Portuguese)
- Take Quiz: Test your knowledge with AI-generated multiple-choice questions
- Contact Us: Use the contact form for feedback, bug reports, or feature requests
- AI-powered summarization using Hugging Face
- Multi-language translation with OpenAI
- Interactive quiz generation
- File upload support (PDF, DOCX, TXT, CSV, XLSX, PPTX)
- Responsive web interface
- Google Analytics integration
- Contact form with feedback collection
- Live deployment on Vercel (frontend) and Render (backend)
- Added Google Analytics tracking across all pages
- Created contact page with form submission tracking
- Updated navigation to include contact links
- Improved deployment configuration for Render backend
- Enhanced README with current setup instructions
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
MIT License - see LICENSE file for details
- Hugging Face for AI model hosting
- OpenAI for translation services
- Tailwind CSS for styling framework
- FastAPI for the backend framework
EduSummarizer Hub - Making education more accessible and efficient with AI β¨



