PaperParser transforms academic research papers into podcasts 🎧 and PowerPoint presentations 📊.
By combining AI summarization and automated content generation, it makes scholarly content easier to consume and share.
- 🎧 Podcast Generation – Listen to research papers in audio format
- 📊 Presentation Creation – Auto-generate slide decks with key insights
- 📄 PDF Parsing – Extract text and structure from uploaded research papers
- ☁️ Cloud Integration – Secure storage and authentication with Supabase
- ⚡ Node.js + Express.js – Core API server
- 🧠 Gemini API – Summarization and content generation
- 📄 PyMuPDF – High-quality PDF text parsing
- ☁️ Supabase – Database + authentication layer
- 🐳 Docker – Containerized backend for easy deployment
- ⚛️ Next.js (React + TypeScript) – Modern frontend framework
- 🌀 Tailwind CSS – Utility-first styling for responsive UI
git clone https://github.com/P1Manav/PaperParser.git
cd PaperParserNavigate to backend:
cd backendCreate a .env file (sample):
SUPABASE_URL=
SUPABASE_SERVICE_ROLE_KEY=
GEMINI_API_KEY=
google_api_key=
PORT=5000
NODE_ENV=Build Docker image:
docker build -t paperparser_image .Run the container:
docker run --env-file .env -p 5000:5000 --name paperparser_container paperparser_image📌 Backend runs at: http://localhost:5000
Navigate to frontend:
cd ../frontendCreate .env.local file (sample):
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
GEMINI_API_KEY=
NEXT_PUBLIC_API_URL=http://localhost:5000Install dependencies:
npx yarn installRun development server:
npx yarn dev📌 Frontend runs at: http://localhost:3000
- 📄 Upload a PDF in the frontend
- ⚙️ Choose output → Podcast 🎧 or Presentation 📊
- ⬇️ Download or play the result directly
Contributions are welcome! 🚀
- Open an issue for bugs or feature requests
- Submit a PR to help improve PaperParser