AI-powered Chrome extension and web app that automatically transcribes YouTube videos and generates intelligent summaries using Google Gemini API. Perfect for content creators, students, and professionals who need quick video insights.
- YouTube video automatic transcription extraction
- Real-time processing with high accuracy
- Multi-language support for global content
- Cached results to avoid duplicate processing
- Google Gemini API integration for intelligent analysis
- Contextual summaries that capture key points
- Markdown formatting for easy reading
- Customizable summary length and style
- Supabase database for efficient caching
- React 18 with modern hooks
- SCSS styling for responsive design
- Error handling and validation
| Category | Technologies |
|---|---|
| Frontend | |
| Styling | |
| AI/API | |
| Database | |
| Tools |
- Node.js 16+
- Google Gemini API key
- Supabase project setup
# Clone the repository
git clone https://github.com/Freddymhs/gemini-transcript.git
cd gemini-transcript
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env
# Add your API keys to .env file
# Start development server
npm run devVITE_GEMINI_API_KEY=your_gemini_api_key_here
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_keygraph TD
A[User inputs YouTube URL] --> B[Validate URL]
B --> C{Check Supabase Cache}
C -->|Found| D[Load cached transcription]
C -->|Not found| E[Extract transcript via youtube-transcript]
E --> F[Save to Supabase]
D --> G[Send to Gemini AI]
F --> G
G --> H[Generate intelligent summary]
H --> I[Display formatted result]
- URL Validation - Ensures valid YouTube links
- Cache Check - Searches Supabase for existing transcriptions
- Transcript Extraction - Uses
youtube-transcriptfor new videos - AI Processing - Sends to Gemini API for intelligent analysis
- Summary Generation - Creates contextual summaries
- Markdown Display - Presents results with
react-markdown
src/
βββ components/ # React components
β βββ TranscriptForm/ # URL input and validation
β βββ VideoPreview/ # YouTube thumbnail display
β βββ SummaryDisplay/ # AI-generated summary
βββ helpers/ # Utility functions
β βββ gemini.js # Gemini API integration
β βββ supadata.js # Supabase operations
β βββ validation.js # URL validation
βββ styles/ # SCSS stylesheets
βββ App.jsx # Main application component
public/
βββ manifest.json # Chrome extension manifest
βββ icons/ # Extension icons
- Prevents duplicate API calls for the same video
- Supabase integration for persistent storage
- Optimized query performance
// Example Gemini integration
const getGeminiAnswer = async (transcript) => {
const prompt = `Analyze and summarize this YouTube transcript: ${transcript}`;
return await geminiAPI.generateContent(prompt);
};- Browser extension for seamless YouTube integration
- One-click transcription while watching videos
- Popup interface for quick access
# Development
npm run dev # Start dev server with hot reload
npm run build # Build for production
npm run preview # Preview production build
# Chrome Extension
npm run build:extension # Build Chrome extension
npm run package # Package extension for store
# Utilities
npm run lint # Run ESLint
npm run format # Format code with PrettierTry the web app: gemini-transcript-one.vercel.app
- Paste any YouTube URL (e.g., tech talks, tutorials, interviews)
- Click "Generate Transcript"
- Get AI-powered summary in seconds
- Copy or export results
- π Summarize lecture videos
- π Create study notes from educational content
- π Extract key concepts quickly
- π¬ Analyze competitor content
- π Extract video insights
- π‘ Generate content ideas
- π’ Summarize conference talks
- π Extract business insights
- β±οΈ Save time on long videos
Contributions are welcome! Please feel free to submit issues and pull requests.
- Follow existing code style
- Add tests for new features
- Update documentation
- Test Chrome extension functionality
This project is licensed under the MIT License - see the LICENSE file for details.
Freddy Huaylla - Fullstack Developer
- π Portfolio: fmarcos.dev
- πΌ LinkedIn: freddymhs
- π§ Email: fmarcosdev@gmail.com
β Star this repo if it helped you!
Powered by Google Gemini AI and built with React