Content in. Private podcasts out.
Turn videos, links, articles, meetings, and courses into private podcasts you can listen to anytime — host persona, voice, and style fully customizable.
English · 简体中文
Product · Who it's for · UI · Get started
- You saved talks, courses, meeting notes, and long articles — always “later”
- On commutes, chores, or walks, you want to digest info — but your phone only offers short-video noise
- You want a show just for yourself, without recording into a mic at midnight
- You tried AI podcast demos: fake voices, rigid personas, and you quit after two minutes
BokeBox is built for those moments.
Not limited to long videos. Drop a video, web link, article, meeting note, course material, or plain draft into the box (and extend more sources via Source plugins). It will:
- Understand the content
- Rewrite it as a spoken script
- Speak it in the voice you choose
- Turn it into a private podcast you can play anytime
What you put in What BokeBox gives back
───────────────── ──────────────────────
Meetings / notes Rhythmic spoken episodes
Course replays / materials ─AI──▶ Custom host personas
Long-form articles / drafts Preset / described voices
Any link (plugin-extensible) Cover · flashcards · progress
In one line:
Not another single-format “media-to-audio” converter — a multi-source personal AI podcast studio that belongs only to you.
| What you care about | How BokeBox does it |
|---|---|
| You can actually finish it | Not dry subtitle reading — AI rewrites into spoken structure: open, highlights, close |
| Multi-source input | Videos / links / drafts / meetings & courses — extend further with Source plugins |
| Sounds like a person talking | Natural podcast voices + delivery tags (pauses, light laughs, pace shifts…) |
| You own the persona | Who the host is, who they talk to, style, show name — global defaults or per-episode |
| AI-native control | Built-in MCP so Cursor / Claude can create episodes and query jobs |
| Knowledge sticks | Auto-extracted flashcards so key points are easy to review |
| Your data stays yours | Single-user private deploy; tasks and progress stay local — no public social feed |
If you believe:
Great content deserves a second listen — told the way you like.
Give BokeBox a ⭐ and help more people discover private AI podcasts.
Long videos, articles, meetings, and course materials are dense, but they burn eye time and uninterrupted blocks.
BokeBox turns them into ear time: commute, chores, bedtime — still productive.
You can set:
- How the host introduces themselves
- PM, teacher, or friend-chat vibe
- Show name, tone, opening/closing habits
- Which voice to use (or describe the timbre you want)
AI generates. You direct taste and style.
Each episode ships audio plus knowledge cards and notes — one listen becomes reviewable assets.
- Lifelong learners: too many courses, interviews, keynotes, and essays — want highlights in spare time
- Creators / researchers: digest multi-source material by ear before writing or editing
- Solo founders / indie hackers: fold meetings, links, notes, and essays into one personal “info radio”
- Privacy-minded users: content stays on your machine, not platform algorithms
Not a fit if you want a public podcast platform, multi-tenant SaaS, or live collaborative editing. BokeBox is intentionally small, private, and deep.
Create, listen, and manage task assets in one private space.
| Home | Player |
|---|---|
![]() |
![]() |
You get:
- Home library — finished shows and in-progress jobs at a glance
- One-click create — upload video / paste link / drop draft, set persona & voice
- Task detail — transcript, script, audio, cover, flashcards end-to-end
- Immersive player — progress memory, speed, sleep timer
Tune the voice, persona, prompt templates, MCP access, and public site details from one settings center.
| Voice | Persona |
|---|---|
![]() |
![]() |
| MCP | Prompt templates |
![]() |
![]() |
-
Drop it in
Local video, web link, article, or existing draft / notes — plus plugin-extended sources. -
Tune it (optional)
Keep global persona, or set this episode’s tone. -
Go do something else
Transcribe → script → voice → cover / cards — runs in the background. -
Put headphones on
Open the player. Feels like a show made for you.
BokeBox ships with a built-in MCP (Model Context Protocol) endpoint. After setup, the server auto-issues a long-lived token.
- Protocol:
POST /mcp(Bearer token) - Install payload:
GET /api/mcp/install(login required), or Settings → MCP - Tools include:
create_podcast_from_url,create_podcast_from_text,list_jobs,get_job, …
Cursor example:
{
"mcpServers": {
"bokebox": {
"url": "http://localhost:8787/mcp",
"headers": {
"Authorization": "Bearer <token from Settings → MCP>"
}
}
}
}Optional env PUBLIC_BASE_URL helps generate the correct install URL behind a reverse proxy.
Three steps to ship. Deeper deploy & model notes are in the appendix.
git clone https://github.com/vastsa/BokeBox.git
cd bokebox
cp .env.example .env # add your API keys
./start.sh # open http://localhost:5173First launch walks you through account setup and model config.
After that, your first private episode is one piece of content away.
Docker (recommended: pull prebuilt image):
cp .env.example .env
docker pull ghcr.io/vastsa/bokebox:latest
./start.sh docker
# open http://localhost:8787Docker (build from source locally):
cp .env.example .env
./start.sh docker.localDocker (China mirrors build, recommended on mainland servers):
cp .env.example .env
./start.sh docker.cn
# DaoCloud Node image + Aliyun apt + npmmirror
# Installs system ffmpeg to avoid GitHub binary download timeoutsBokeBox: turn videos, links, articles, meetings, and courses into private podcasts you can listen to anytime. Customize host persona and voice, with MCP and pluggable sources. Self-hosted — your data stays under your control.
If that resonates:
- ⭐ Star the repo so more people see it
- Open an Issue — what content do you most want “podcast-ified”?
- PRs welcome — UX, copy, more voices & model adapters especially
- Better multi-episode / “continue listening” flows
- Richer voices and providers
- Subscription export (e.g. RSS) into apps you already use
- Lighter one-click desktop packaging
Your stars, issues, and PRs are roadmap votes.
Most tools help you produce content faster.
BokeBox cares more about helping you digest content better.
In an age of overload, what you can finish listening to is what truly becomes yours.
Content in. Private podcasts out.
Add BokeBox to your toolkit — and drop a Star so more people find it.
Appendix: for people who want to deploy
- Node.js ≥ 22.5 · pnpm 9.x
- OpenAI-compatible API (Chat / ASR / TTS; image model optional)
| Command | Description |
|---|---|
./start.sh |
Local dev (web 5173 + API 8787) |
./start.sh prod |
Build and run on a single port |
./start.sh docker |
Pull ghcr.io/vastsa/bokebox:latest and start |
./start.sh docker.local |
Build from local Dockerfile and start |
./start.sh docker.cn |
Build with China mirrors and start (mainland servers) |
./start.sh docker:down |
Stop containers |
OPENAI_API_KEY=sk-your-key
OPENAI_BASE_URL=https://api.example.com/v1
OPENAI_CHAT_MODEL=mimo-v2.5
OPENAI_TRANSCRIBE_MODEL=mimo-v2.5-asr
OPENAI_TTS_MODEL=mimo-v2.5-tts
OPENAI_TTS_DEFAULT_VOICE=冰糖Full variables: .env.example. CI/CD & image publish: docs/ci-cd.md. Web font/color tokens: docs/web-design-tokens.md.
multi-source input (video / link / draft / plugins)
→ normalize → ASR/understanding → spoken script
→ parallel: cover / flashcards / TTS → library
React · Vite · Fastify · SQLite · ffmpeg · pnpm monorepo
LGPL-3.0 — open source; derivative works of the library must remain LGPL-compatible.
BokeBox
Private AI podcast box · Open Source · LGPL-3.0
github.com/vastsa/BokeBox
BokeBox is not locked to one media type. Beyond built-in video / link / draft paths, optional external Source plugins extend content ingestion (high-risk fetchers are not bundled by default).
- Drop plugins into
storage/plugins/source/, rescan in Settings - Plugins normalize inputs into the same pipeline: spoken script → voice → cover / flashcards
- Developer guide: docs/source-plugin-development.md
- Architecture notes: docs/source-plugins.md
- Example plugin: examples/source-plugin-echo
- ASR/TTS plugins: docs/asr-tts-plugins.md
- TTS plugin developer guide: docs/tts-plugin-development.md
- TTS examples: examples/tts-plugin-echo · examples/tts-plugin-fishspeech
- Web design tokens (font/color): docs/web-design-tokens.md







