A Next.js application that transforms PDF content into engaging podcasts using Adobe PDF Services API, Google Gemini AI, and Azure Text-to-Speech.
-
PDF Integration
- Seamless in-browser PDF viewing with Adobe PDF Embed API
- Interactive text selection and highlighting
- Multi-document support with document library
- Smart document outline detection
-
AI-Powered Processing
- Text snippet extraction from PDFs
- Intelligent content summarization using Google Gemini
- Natural podcast script generation
- High-quality audio synthesis with Azure OpenAI TTS
-
User Experience
- Clean, modern interface
- Drag-and-drop file upload
- Real-time processing feedback
- Downloadable audio output
- Document navigation through headings
- Frontend: Next.js with React
- PDF Processing: Adobe PDF Embed API
- AI Processing: Google Gemini
- Audio Generation: Azure OpenAI TTS
- Containerization: Docker
- State Management: React Context API
Before you begin, ensure you have installed:
You'll need the following API credentials:
- Adobe PDF Embed API Key
- Google Gemini API Key
- Azure TTS API Key and Endpoint
-
Clone the repository
git clone https://github.com/SanjaiPG/Snipply.git cd Snipply -
Install dependencies
npm install npm install @google/generative-ai microsoft-cognitiveservices-speech-sdk pdfjs-dist npm install cross-env --save-dev
-
Configure environment variables
cp .env.example .env
Then edit
.envwith your API keys and configuration.
npm run dev-
Build the Docker image
docker build -t adobe-hackathon-finale . -
Run the container
For Windows:
docker run ^ -e GOOGLE_API_KEY=<your-key> ^ -e AZURE_TTS_KEY=<your-key> ^ -e AZURE_TTS_ENDPOINT=https://eastus.api.cognitive.microsoft.com/ ^ -e ADOBE_EMBED_API_KEY=<your-key> ^ -e NEXT_PUBLIC_GEMINI_API_KEY=<your-key> ^ -e LLM_PROVIDER=gemini ^ -e TTS_PROVIDER=azure ^ -e GEMINI_MODEL=gemini-2.5-flash ^ -e AZURE_TTS_DEPLOYMENT=tts ^ -p 8080:8080 adobe-hackathon-finale
For Linux/macOS:
docker run \ -e GOOGLE_API_KEY=<your-key> \ -e AZURE_TTS_KEY=<your-key> \ -e AZURE_TTS_ENDPOINT=https://eastus.api.cognitive.microsoft.com/ \ -e ADOBE_EMBED_API_KEY=<your-key> \ -e NEXT_PUBLIC_GEMINI_API_KEY=<your-key> \ -e LLM_PROVIDER=gemini \ -e TTS_PROVIDER=azure \ -e GEMINI_MODEL=gemini-2.5-flash \ -e AZURE_TTS_DEPLOYMENT=tts \ -p 8080:8080 adobe-hackathon-finale
This project was developed as part of the Adobe India Hackathon 2025 Finals, where our team Ritzy, achieved the distinction of being ranked among the Top 100 teams nationwide. The project showcases innovative use of Adobe's PDF Services API combined with modern AI technologies to create a unique document-to-podcast conversion solution.