Skip to content

VrajVed/GGW_Megathon_Saral

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ SARAL AI - Research Democratization Platform

Simplified And Automated Research Amplification and Learning

License Python React FastAPI

Transform research papers into educational videos, podcasts, mind maps, and visual stories using AI.

Quick Links: Live Demo | Chrome Extension | WhatsApp Bot | Contact


πŸ“‹ Table of Contents


✨ Overview

Research Paper β†’ AI Processing β†’ πŸ“Ή Video | πŸŽ™οΈ Podcast | πŸ—ΊοΈ Mindmap | πŸ“– Story
πŸ”Œ Chrome Extension: Process papers from any website!

Key Capabilities:

  • πŸŽ₯ Educational videos with AI narration
  • πŸŽ™οΈ Natural podcast conversations
  • πŸ—ΊοΈ Visual mind maps
  • πŸ“– Cinematic storytelling videos
  • πŸ”Œ Chrome extension for instant processing
  • πŸ’¬ WhatsApp bot for 24/7 research assistance
  • 🌐 Multi-language (English/Hindi/Gujarati)

πŸš€ Key Features

Feature Description
Video Generation AI scripts, professional slides, multi-language narration
Podcast Creation Two-voice dialogues, natural conversations
Mind Mapping Hierarchical concept visualization, SVG export
Visual Stories Scene-by-scene narratives with text overlays
Chrome Extension One-click processing from arXiv, Google Scholar
WhatsApp Bot 24/7 research assistance via chat
Batch Processing Handle multiple papers efficiently

🎯 Use Cases

Students: Exam prep, quick paper understanding, visual learning
Educators: Lecture content, teaching materials, multi-format resources
Researchers: Conference presentations, accessible findings, outreach
Institutions: Content libraries, online courses, research accessibility
Chrome Extension: Process papers instantly from any research website
WhatsApp Bot: Chat-based research assistance, anywhere, anytime

πŸ“„ Tutorial: Download PDF for complete setup and usage guide


πŸ“¦ System Requirements

Backend: Python 3.9+, LaTeX (pdflatex/MiKTeX), Poppler, FFmpeg, 4GB+ RAM
Frontend: Node.js 16+, npm 8+, Modern browser
API Keys: Google Gemini (required, free 200 req/day), Sarvam AI (optional, Hindi TTS), Hugging Face (optional, free AI images)


πŸ—οΈ Project Structure

GGW_Megathon_Saral/
β”œβ”€β”€ chrome-extension/    # Browser extension (manifest.json, popup, content scripts)
β”œβ”€β”€ backend/            # FastAPI server (routes, services, models)
β”‚   β”œβ”€β”€ app/           # Main application (routes/, services/, models/)
β”‚   └── temp/          # Generated files (papers, videos, podcasts, mindmaps)
└── frontend/          # React app (pages, components, contexts)

Related Repository:
└── Research-Paper-Chatbot/  # WhatsApp bot companion (Twilio + Gemini)
    └── https://github.com/N1KH1LT0X1N/Research-Paper-Chatbot

βš™οΈ Installation

Prerequisites

Windows: Python, Node.js, MiKTeX, Poppler, FFmpeg
macOS: brew install python@3.9 node poppler ffmpeg && brew install --cask mactex
Linux: sudo apt install python3.9 nodejs npm poppler-utils ffmpeg texlive-full

Setup

# Clone repository
git clone https://github.com/yourusername/GGW_Megathon_Saral.git
cd GGW_Megathon_Saral

# Backend
cd backend
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt

# Frontend
cd ../frontend
npm install

πŸ”§ Configuration

Create .env in backend/ directory:

GEMINI_API_KEY_1=AIzaSy...    # Get from https://aistudio.google.com/apikey
GEMINI_API_KEY_2=AIzaSy...    # Optional: for quota rotation
SARVAM_API_KEY=your_key       # Get from https://www.sarvam.ai/
HUGGINGFACE_API_KEY=hf_...    # Optional: https://huggingface.co/settings/tokens

API Key Rotation: Add multiple Gemini keys (GEMINI_API_KEY_1, _2, etc.) for automatic rotation when quota limits hit.
Web UI Setup: Configure keys through the API Setup page after launching the app.


▢️ Running

Backend (Terminal 1):

cd backend && source .venv/bin/activate  # Windows: .venv\Scripts\activate
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

β†’ Backend: http://localhost:8000 | API Docs: http://localhost:8000/docs

Frontend (Terminal 2):

cd frontend && npm start

β†’ Frontend: http://localhost:3000


πŸ“š Features Workflow

Video Generation: Upload paper β†’ Generate script β†’ Edit content β†’ Assign images β†’ Generate video (English/Hindi, adjustable complexity)
Podcast Creation: Upload paper β†’ Generate dialogue β†’ Customize voices β†’ Create MP3 (natural two-voice conversation)
Mind Mapping: Upload paper β†’ AI extracts concepts β†’ Download SVG (hierarchical structure, relationships)
Visual Story: Upload paper β†’ Generate scenes β†’ Create video with text overlays β†’ Watch/download


πŸ”Œ Chrome Extension

Installation

Chrome Store: Coming soon
Manual: chrome://extensions/ β†’ Enable Developer mode β†’ Load unpacked β†’ Select chrome-extension folder

Usage

  1. Right-click any paper on arXiv/Google Scholar β†’ "Generate Video/Podcast with SARAL"
  2. Extension popup β†’ Detects paper β†’ One-click generation
  3. Highlight URL β†’ Right-click β†’ "Process with SARAL"

Features

Auto-detects papers on arXiv, Google Scholar, PubMed, ResearchGate, IEEE, Springer, ScienceDirect | One-click generation | Batch processing | Real-time notifications | Keyboard shortcut: Ctrl+Shift+S

Settings

Configure backend URL (http://localhost:8000), complexity level, language, theme via extension popup


οΏ½ WhatsApp Bot

Your 24/7 AI research assistant for semantic search, Q&A, and summarization of research papers via WhatsApp.

πŸš€ Quick Start

Join the Bot: WhatsApp Link
Repository: Research-Paper-Chatbot
Live Demo: https://research-paper-chatbot-2.onrender.com

✨ Features

Feature Description
Semantic Search Natural language search across research papers
Q&A System Ask questions about specific papers and get scholarly answers
Paper Summaries Get concise summaries of research papers
Topic Explanations Simple explanations suitable for different learning levels
Activities Generator Generate educational activities based on research topics

πŸ“± Usage

Send messages to the WhatsApp bot:

# Search for papers
"transformer attention"
"retrieval augmented generation"

# Select a paper
"select 1"

# Start Q&A session
"ready for Q&A"
"tell me more about attention is all you need"

# Get explanations
"Explain transformers"

# Generate activities
"Activities machine learning"

πŸ› οΈ Technical Stack

  • Backend: Flask + Python 3.9+
  • AI Engine: Google Gemini API
  • Messaging: Twilio WhatsApp API
  • Search: Semantic search with arXiv integration
  • PDF Processing: PyMuPDF for paper extraction

πŸ”§ Self-Hosting (Optional)

If you want to deploy your own instance:

# Clone the bot repository
git clone https://github.com/N1KH1LT0X1N/Research-Paper-Chatbot.git
cd Research-Paper-Chatbot

# Install dependencies
pip install -r requirements.txt

# Configure environment
# Create .env file with:
# TWILIO_ACCOUNT_SID=your_sid
# TWILIO_AUTH_TOKEN=your_token
# GEMINI_API_KEY=your_key

# Run the bot
python research_bot.py

# Expose with ngrok for webhook
ngrok http 5000

Webhook Setup: Configure Twilio WhatsApp sandbox webhook to point to https://your-ngrok-url.ngrok.io/whatsapp

🌟 Integration with SARAL AI

The WhatsApp bot complements the SARAL AI web platform by providing:

  • Mobile-First Access: Research assistance on-the-go without browser
  • Conversational Interface: Natural language interactions
  • Quick Queries: Instant answers without full video generation
  • Accessibility: Chat-based interface for users with limited connectivity

Use the web platform for comprehensive content generation (videos, podcasts, mindmaps) and the WhatsApp bot for quick research queries and paper discovery.


οΏ½πŸ” Troubleshooting

Common Issues:

  • ImportError β†’ pip install -r requirements.txt in venv
  • PDF/LaTeX errors β†’ Install poppler, MiKTeX/texlive, add to PATH
  • FFmpeg not found β†’ Install and add to PATH
  • API key invalid β†’ Check .env format (no quotes: KEY=value)
  • Gemini quota β†’ Add multiple keys: GEMINI_API_KEY_1, _2, etc.
  • Port in use β†’ Kill process or change port
  • npm install fails β†’ Delete node_modules, reinstall
  • No audio in video β†’ Verify Sarvam API key
  • Extension issues β†’ Reload from chrome://extensions/
  • WhatsApp bot not responding β†’ Check Twilio webhook configuration and API keys

Get Help: GitHub Issues | Email | WhatsApp Bot


πŸ› οΈ Development

Tech Stack:
Frontend: React 18.x, Tailwind CSS, Framer Motion, React Router, Axios
Backend: FastAPI, Google Gemini API, Sarvam AI, MoviePy, FFmpeg, PyMuPDF, PIL

Testing: npm test (frontend), pytest (backend)
Customization: Edit tailwind.config.js for themes, TTS service for voices, slide_generator.py for video templates


πŸ“‘ API Documentation

Base URL: http://localhost:8000/api

Key Endpoints: /papers/upload, /papers/arxiv, /scripts/generate, /slides/generate, /media/generate-audio, /media/generate-video, /podcast/generate, /mindmap/generate, /visual-storytelling/generate-storytelling-script, /visual-storytelling/generate-storytelling-video

Interactive Docs: http://localhost:8000/docs - Complete reference, testing, schemas


🀝 Contributing

Report Bugs: Open issue with description, steps to reproduce, error logs
Suggest Features: Open issue with use case and benefits
Submit PRs: Fork β†’ Create branch β†’ Commit β†’ Push β†’ Open PR
Code Style: Python (PEP 8), JavaScript (ESLint), Conventional commits

πŸ—οΈ Project Ecosystem

This project consists of two complementary repositories:

  1. SARAL AI Platform (This Repo) - Full-featured web application
  2. WhatsApp Bot - Mobile-first chat interface

Both repositories are maintained by the SARAL AI team and work together to democratize research access.


πŸ“„ License

MIT License Β© 2025 SARAL AI Team - See LICENSE for details


πŸ™ Acknowledgements

AI & APIs: Google Gemini, Sarvam AI, Hugging Face
Frameworks: FastAPI, React, Tailwind CSS, MoviePy, FFmpeg
Tools: arXiv, LaTeX, Poppler


πŸ“ž Contact

Email: democratise.research@gmail.com
WhatsApp Bot: Join Bot
GitHub Issues: Report Bugs
Bot Repository: Research-Paper-Chatbot


⭐ Star this repository if you found it helpful!

Made with ❀️ by the GitGoneWild Team | Making Research Accessible to Everyone

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors