# How to Vibe Code Your Own VidNotes (and Stop Paying for It)

> The Video Transcription Platform for you and your AI agents

- Site: https://vidnotes.app
- Category: AI Productivity & Knowledge Extraction
- Verdict: **Solid side project** (62/100 vibecodeable)
- Estimated effort: 3-4 weeks part-time

## Verdict

You can build a functional personal clone of VidNotes as a web application with AI transcription and chat, but wiring up the multi-platform client apps and the 22-tool MCP server requires serious engineering hours.

VidNotes combines standard Whisper transcription with heavy prompt engineering and an MCP server layer. While vibecoding can spin up a Next.js web app that accepts YouTube links, processes audio with OpenAI Whisper, and generates flashcards using the Vercel AI SDK within a couple of weekends, replicating the native iOS/Android apps, the Chrome extension, and the 22-tool MCP server takes weeks of dedicated debugging, rate-limit handling, and protocol design. For personal use, building a web-only version with an MCP wrapper is a rewarding project, but paying $50/year is financially cheaper than the API tokens and debugging friction.

### What you can't replicate

- The exact App Store distribution footprint and organic user acquisition
- Optimized native SwiftData local-first sync across Apple ecosystem devices

## What it does

Converts videos from YouTube, TikTok, Instagram, Vimeo, or local files into structured text, timestamped transcripts, multi-language subtitles, AI summaries, actionable meeting items, study flashcards, and interactive Q&A chat kits, with a developer-focused REST API, CLI, and MCP server.

### Core features

- URL normalization and multi-tier video caption/audio ingestion pipeline (YouTube/TikTok/Instagram/Vimeo)
- Local audio extraction via AVFoundation or client runtime
- Multi-provider speech-to-text fallback strategy (Caption API -> RapidAPI -> Whisper STT)
- Structured AI downstream knowledge extraction (Summaries, Flashcards, Action Items)
- Retrieval-Augmented Generation (RAG) chat over transcript context with timestamp citations
- Local-first persistence and offline playback with time-synced timestamps
- Model Context Protocol (MCP) server implementation with 22 structured tools
- Programmatic REST API contract (/v1) and CLI tool

## The business

### Pricing

- Free: $0 — Try core features
- Paid Yearly: $4.17/mo — $49.99/yr, billed yearly

Founded 2025.
Team size: Solo developer.

## The hard parts

- Bypassing platform rate limits, geo-restrictions, and parsing dynamic video streams across YouTube, TikTok, and Instagram
- Chunking and managing large multi-hour transcript token contexts without breaking LLM limits or citation accuracy
- Building a dual-surface ecosystem: a responsive cross-platform native/web app plus a fully functional MCP server and CLI
- Coordinating multi-tier caption fallbacks seamlessly with sub-3-second responses for cached videos

## How to vibe code VidNotes

### Prerequisites

- Node.js (free): Required for running the Next.js frontend, API routes, and MCP server runtime
- GitHub (free): Version control and repository hosting for your codebase
- OpenAI API Key (pay-as-you-go (~$10-20/mo usage)): Provides backend access to Whisper for speech-to-text and GPT models for summaries, flashcards, and RAG chat

### Recommended AI tools

- Claude Code: Best-in-class terminal coding agent for scaffolding the full Next.js application, database schema, and MCP server in parallel.
- Cursor: Ideal for fine-tuning frontend React components, audio player scrubbing logic, and markdown export views.

### Stack

- Frontend: Next.js with Tailwind CSS and shadcn/ui
- Backend: Next.js Server Actions and API Routes
- Database: Turso (SQLite at the edge for storing projects, transcripts, and flashcards)
- Auth: better-auth
- Payments: None (Personal use clone)
- Other: Vercel AI SDK, OpenAI API (Whisper & GPT-4o-mini), Model Context Protocol SDK (@modelcontextprotocol/sdk)

### Hosting

- Vercel (Hosts the Next.js web application, frontend UI, and serverless API endpoints with zero-config GitHub deployments.): $0-20/mo
- Turso (Provides serverless SQLite databases for storing video projects, transcript segments, and flashcard decks.): $0/mo

### Build guide

1. **Project Scaffolding and Database Schema** — Initialize the Next.js project with Tailwind CSS, shadcn/ui, better-auth, and Turso database integration.

```
Create a new Next.js 16 project with Tailwind CSS 4, TypeScript, and App Router. Set up better-auth for simple email/password and Google authentication. Configure Turso (libSQL) as the database client. Create database tables for VideoProjects, Transcripts, TranscriptSegments, FlashCardDecks, FlashCards, and ActionItems. Ensure all foreign keys have cascading deletes and proper indexing for timestamps and project IDs. Write a comprehensive README.md detailing local development setup.
```

2. **Video Ingestion and Caption Fallback Pipeline** — Build the URL parser and multi-tier ingestion service handling YouTube links and file uploads.

```
Build a video ingestion service in lib/video-ingestion.ts. Implement URL normalization that extracts video IDs from standard YouTube URLs, Shorts, and mobile links while stripping tracking parameters. Create a multi-tier caption fetching function: first check for existing captions via public caption scrapers or RapidAPI integration; if unavailable, download audio streams or accept local file uploads (MP4, MOV, M4V), chunk audio files under 25MB, and route them to OpenAI's Whisper API. Return a unified JSON structure containing duration, source type, and timestamped transcript segments.
```

3. **AI Knowledge Extraction Engine** — Implement server actions and AI prompts for structured summaries, flashcards, and action items using the Vercel AI SDK.

```
Implement an AI processing service in lib/ai-service.ts using the Vercel AI SDK and OpenAI models. Create backend functions that take a full transcript and generate: (1) topic-grouped summaries with timestamp citations, (2) study flashcards (Q&A pairs) stored into FlashCard entities, and (3) structured action items with owners and deadlines. Implement language-aware prompt instructions ensuring outputs match the source language across 30+ supported languages.
```

4. **Interactive RAG Chat and Web Interface** — Build the user dashboard, video player with time-synced transcript navigation, and RAG chat interface.

```
Build the web application interface under app/dashboard. Create a responsive dashboard listing video projects with status badges and thumbnails. Build a project detail view featuring an embedded video player (or HTML5 audio/video player for uploaded files) synced with a scrollable transcript component. Clicking any transcript segment timestamp must seek the player to that exact second. Add an AI Chat panel utilizing Vercel AI SDK's useChat hook configured to perform semantic retrieval over transcript segments and output responses with clickable timestamp citation pills.
```

5. **Model Context Protocol (MCP) Server and REST API** — Develop the standalone MCP server and `/v1` REST API contract to allow AI agents like Claude to query transcripts and summaries.

```
Build a standalone Model Context Protocol (MCP) server package in a subfolder `mcp-server` using `@modelcontextprotocol/sdk`. Implement 22 MCP tools that mirror VidNotes capabilities: listing projects, getting transcripts, generating summaries, creating flashcards, querying chat, and managing API keys. Ensure authentication is handled via account-scoped API keys validated against the Turso database. Also implement a corresponding `/v1` REST API route handler in the Next.js app for CLI and external agent consumption.
```

6. **Export Utilities and Final Polish** — Add export options for PDF, TXT, and Markdown, and polish error handling and loading states.

```
Implement export functionality allowing users to download transcripts, summaries, and action items as formatted PDF, plain TXT, or Markdown files. Add clean loading skeletons for background transcription jobs, toast notifications for completed AI tasks, and error boundaries around API requests. Test the end-to-end flow from pasting a YouTube link to chatting with the transcript and exporting markdown notes.
```

### Cost vs paying

**Starting costs (one-time):**

- Domain name (optional): $12 one-time
- Initial OpenAI API credits: $15 one-time
- Total: ~$27 one-time

**Ongoing costs (monthly):**

- Vercel Hobby / Cloudflare Workers: $0/mo
- Turso Database: $0/mo
- OpenAI Whisper & GPT API Usage (Personal volume): ~$5-15/mo
- Total: ~$10/mo

- Paying for the SaaS instead: $4.17/mo ($49.99/yr)
- Build time: 35-50 hours
- AI tool credits: $20 (Claude Pro / Cursor)
- Break-even: Never (paying $4.17/mo for the real polished app is cheaper than API costs and weeks of building)

## Sources

- [VidNotes Official Website](https://vidnotes.app)
- [VidNotes App Store Listing](https://apps.apple.com/us/app/video-transcriber-vidnotes/id6738032646)
- [MCP.so Registry - VidNotes MCP Server](https://mcp.so/server/vidnotes)
- [Silpho App Studio Portfolio](https://silpho.com)