Vibecode VidNotes

track this build4 phases, 12 steps, beginner friendly
KINDA · weekend project
price $9.99/moyou'd save $119.88/yrbuild time weekendcategory 🎬 audio & videoreplaced by 0 people

The narrow DIY loop is achievable in a weekend: import a file or YouTube URL, transcribe it, generate notes, and save the result locally. VidNotes as a product is broader than that prototype. It maintains ingestion across changing video sites, runs long jobs reliably, ships iOS, Android, web, and a Chrome extension, keeps account state consistent, and exposes the workflow to agents through an API, CLI, and MCP server. Rebuilding all of that is a multi-day integration project with an ongoing operations burden.

the project pack5 files · written for this build, step by step
README.md
# VidNotes · indie build

A local workspace turning long recordings into timestamped transcripts and study material, whose hard problems are cutting audio into pieces a transcription API will accept without losing words at the seams, surviving a two-hour job that fails at minute ninety, and never showing a generated claim that cannot be found in the recording.

Estimated effort: **weekend**. Work `BUILD_PLAN.md` top to bottom · every phase ends in a check that has to pass before the next one starts.

## Stack

| Part | Choice | Why |
| --- | --- | --- |
| Runtime | One Python process serving localhost with a background worker, SQLite with full-text search | a study tool is not a service and should not need one |
| Audio | ffmpeg to mono at speech sample rate in a compressed codec, split at silence | the input is a two-hour video and the API takes megabytes |
| Transcription | A hosted model with published limits, chunked under them, key in the environment | local models are a fine later swap and a poor first dependency |
| Jobs | A durable queue with per-chunk checkpoints and a recorded cost per call | a long job that restarts from zero costs money twice |
| Notes | Generated per section, each claim verified against the transcript before it is shown | an unverified flashcard is a wrong answer with a confident face |
| Storage | Media in a per-project directory beside the database, with a disk ceiling and a real delete | video is large and nobody remembers what they imported in March |

## Before you start

Have every one of these ready. The plan assumes them from step one.

- [ ] **Python 3.12 or newer** · free
  - Why: Runs the server and the worker.
  - Get it: python.org or your package manager.
  - Verify: python3 --version prints 3.12 or higher
- [ ] **ffmpeg with an Opus or MP3 encoder** · free
  - Why: Extracts and compresses the audio, and a build without the encoder you chose fails only at the first real import.
  - Get it: Your package manager, or a static build from ffmpeg.org.
  - Verify: ffmpeg -encoders lists the encoder you intend to use
- [ ] **An API key for a transcription and text model** · per minute of audio, a few pence per hour of recording
  - Why: Transcription is the one part not worth writing, and the key is also the thing that can quietly cost money.
  - Get it: Create a key with its own spending limit rather than reusing an unlimited one.
  - Verify: A one-minute sample returns timestamped text and the call appears on the usage page
- [ ] **A recording whose true timings you know** · free
  - Why: Chunk offsets and seek accuracy cannot be tested against a recording nobody has listened to.
  - Get it: Record two minutes saying a distinct word at known times, or annotate a lecture you own.
  - Verify: The known words appear in the transcript at the times you spoke them
- [ ] **Your disk ceiling, spend cap and import policy** · free
  - Why: Each is enforced by code and asserted by a test, and deciding them later means accepting whatever the first month produced.
  - Get it: Write down the media directory limit, the monthly spend cap, and whether the downloader is enabled and on what basis.
  - Verify: All three appear in the configuration and in the README

## Quick start

```sh
ffmpeg -i input.mp4 -ac 1 -ar 16000 -c:a libopus prepared.opus
```

Then copy `.env.example` to `.env` and fill in the values it documents.

## Honest limits

This build deliberately does not replace:

- Native mobile apps and a browser extension.
- Extraction from sites whose terms forbid it.
- Accounts and cross-device sync.
- A public API, CLI or agent server.
- native iOS and Android apps, a Chrome extension, and cross-device Premium state
- managed extraction for TikTok, Instagram, Vimeo, and changing source sites
- background processing, queue reliability, and long-video handling
- 30+ language polish and prebuilt flashcards, quizzes, and chat
- hosted web, API, CLI, and MCP access for agents

If one of those is essential to you, that is the reason to keep paying for VidNotes, and the README should say so rather than pretend.

$ choose a build depth, inspect the files, then open the complete pack in your agent

why people still pay

People pay for the maintained system around transcription: source adapters that keep working, long-job processing and retries, consistent results across native apps, web, and the extension, synced account state, and stable API, CLI, and MCP access for agents. The recurring value is avoiding integration breakage and operations work, not just getting speech-to-text.

what you lose

xnative iOS and Android apps, a Chrome extension, and cross-device Premium state

xmanaged extraction for TikTok, Instagram, Vimeo, and changing source sites

xbackground processing, queue reliability, and long-video handling

x30+ language polish and prebuilt flashcards, quizzes, and chat

xhosted web, API, CLI, and MCP access for agents

share on X ↗"I just replaced VidNotes ($9.99/mo) with one prompt"
the escape hatch

Don't feel like building it? These folks already made it free.

StoryToolkitAILocal transcription and semantic footage search from an app that still admits it is rough.977jun 2026open source↗NotebookLMDrop in a YouTube video and get searchable, source-grounded study material; Google keeps the notebook.$0free↗

no votes, no pay-to-list · just what's real

the numbers

VidNotes pricing

planmonthlyannual (per mo)what you get
monthly$9.99$4.17Unlimited transcription, summaries, flashcards, chat and action items; 30+ languages

free tierno free tier; any trial allowance is not numerically disclosed on the public pricing section

billingmonthly or $49.99/year; no per-minute transcription charge advertised

verified 2026-08-14 · source ↗

questions
Vibecode VidNotes

Kinda. The core of VidNotes is buildable in a weekend with the prompt on this page, but there are real gaps: native iOS and Android apps, a Chrome extension, and cross-device Premium state, managed extraction for TikTok, Instagram, Vimeo, and changing source sites. Read the honest list above before committing.

How much does VidNotes cost?

VidNotes costs about $9.99/month (Monthly, checked 2026-07-31), which is $119.88 per year.

What do I lose by replacing VidNotes?

Honestly: native iOS and Android apps, a Chrome extension, and cross-device Premium state; managed extraction for TikTok, Instagram, Vimeo, and changing source sites; background processing, queue reliability, and long-video handling; 30+ language polish and prebuilt flashcards, quizzes, and chat; hosted web, API, CLI, and MCP access for agents. If any of those are load-bearing for you, keep paying.

Is there an open-source alternative to VidNotes?

Yes: StoryToolkitAI (Local transcription and semantic footage search from an app that still admits it is rough.) NotebookLM (Drop in a YouTube video and get searchable, source-grounded study material; Google keeps the notebook.) The prompt is for when you want it exactly your way.