Local-first YouTube transcript assistant with citation-grounded answers.
- Paste a YouTube link (or transcript file)
- Ask questions with AI-powered, timestamp-cited answers
- Click timestamps to jump to the exact moment in the video
- Use native or AI-generated chapters
- Export transcripts as TXT, JSON, HTML, or PDF
Privacy: Your API key is used per-session and never stored to disk. Everything runs locally.
| Platform | Download | Format |
|---|---|---|
| macOS | Capyap_macOS.app.tar.gz | .app bundle |
| Windows | CapYap_1.0.4_x64-setup.exe | Installer (.exe) |
| Windows | CapYap_1.0.4_x64_en-US.msi | Installer (.msi) |
| Linux | CapYap_1.0.4_amd64.deb | Debian/Ubuntu |
| Linux | CapYap_1.0.4_amd64.AppImage | AppImage (portable) |
| Linux | CapYap-1.0.4-1.x86_64.rpm | Fedora/RHEL |
All installers: GitHub Releases
The desktop app auto-starts the local backend at 127.0.0.1:8000 on launch.
If auto-start fails, run manually: conda activate capyap && capyap start --no-browser
Run CapYap in your browser without the desktop shell:
git clone https://github.com/arashabadi/capyap.git
cd capyap
conda env create -f capyap.yml
conda activate capyap
npm run build
capyap startThis installs frontend deps (if needed), builds static assets, launches the local backend + UI, and opens your browser.
Run CapYap fully local with Ollama — no cloud API key required. Setup guide: docs/OLLAMA_SETUP.md
- Paste a YouTube URL or local transcript
.txtpath. - Click Start AI Analysis.
- Choose a provider and paste your API key (or choose
ollamafor free local inference). - Ask questions and review timestamp citations.
conda activate capyap
capyap startFlags: --no-browser | --port 8080 | --host 0.0.0.0
| File | Env Name | Purpose |
|---|---|---|
capyap.yml |
capyap |
Production — run the app (Python + Node) |
capyap-dev.yml |
capyap_dev |
Development — adds Rust, ffmpeg, pytest |
apps/environment.yml |
capyap_apps |
Full app stack — backend + frontend + desktop build chain |
# Production
conda env create -f capyap.yml
# Development (includes build toolchain)
conda env create -f capyap-dev.ymlFor desktop dev, also install frontend/desktop deps:
conda activate capyap_dev
npm --prefix apps/frontend install
npm --prefix apps/desktop install --include=dev| Format | Description |
|---|---|
Clean Text (.txt) |
Plain transcript text |
With Timestamps (.txt) |
Transcript with [mm:ss] markers |
Raw JSON (.json) |
Structured transcript, metadata, and chapters |
HTML (.html) |
Readable export with chapter sidebar and timestamp links |
PDF (.pdf) |
Printable document with chapters and timestamps |
Release builds are fully automated via GitHub Actions. No local build needed.
git tag -a v1.0.4 -m "CapYap v1.0.4"
git push origin v1.0.4GitHub Actions builds and publishes installers for all platforms to GitHub Releases.
Workflow: .github/workflows/desktop-release.yml
| Path | Description |
|---|---|
apps/backend/ |
FastAPI + LangGraph agent backend |
apps/frontend/ |
React/Vite UI |
apps/desktop/ |
Tauri desktop shell (macOS/Windows/Linux) |
src/youtube_video_summarizer/ |
Python package and CLI entrypoints |
- docs/README.md
- docs/AGENTIC_SYSTEM_ARCHITECTURE.md
- docs/DEVELOPMENT_GUIDE.md
- docs/SECURITY_AND_PRIVACY.md
- docs/OLLAMA_SETUP.md
- docs/RELEASE_CHECKLIST.md
- docs/CAPYAP_CLI.md
- apps/UI_LLM_BRIEF.md
CapYap includes script-friendly CLI commands: yt-extract-summarize and yt-transcript-chat.
See docs/CAPYAP_CLI.md.
capyap: command not found— Ensure env is active:conda activate capyap, thenpip install -e .- Frontend build not found — Run once from repo root:
npm run build - Port already in use — Desktop app may already be running backend on
127.0.0.1:8000. Use--port 8080or connect to the existing instance.
See CONTRIBUTING.md.
MIT
