kunchenguid/autopreso
kunchenguid/autopreso227
+52/day23
JavaScriptRealtime speech to presentation. Let the whiteboard whiteboard itself.
From the README
autopreso
Let the whiteboard whiteboard itself.
[!WARNING] autopreso is in alpha and under active development. Expect rough edges, breaking changes, and the occasional weird drawing. Bug reports welcome.
You wanted to give the talk, not build the deck.
autopreso runs a local web app with a live Excalidraw canvas and a listening agent. You speak; transcripts stream to a model; the model draws, labels, and rearranges the whiteboard in real time. Stage a few seed elements, hit start, and present.
- Hands free - your speech drives an agent that edits an Excalidraw scene as you talk, no clicking required.
- Bring your own model - use your OpenAI API key or Codex subscription. Auto Preso itself is completely free and open source.
- Can run locally - use Moonshine for transcription and Ollama for the agent and you get a fully local setup.
Quick Start
$ npx autopreso # boots the server, opens the browser
autopreso listening at
# In the browser:
# 1. Drop reference materials onto the staging canvas (title, agenda, etc).
# 2. Pick your microphone, transcription model, agent model, and optional Agent instructions.
# 3. Click "Start Preso" and start talking.
Install
npm (recommended)
npm install -g autopreso
autopreso
npx (no install)
npx autopreso
From source
git clone
cd autopreso
npm install
npm start
How It Works
┌──────────┐ audio ┌──────────────┐ text ┌──────────────┐
│ mic │──────────► │ STT │────────► │ whiteboard │
│ (browser)│ 24kHz │ Moonshine / │ chunks │ agent │
└──────────┘ │ OpenAI WS │ │ (OpenAI / │
└──────────────┘ │ Codex / │
│ Ollama) │
└──────┬───────┘
│ tool calls
▼
┌────────────────┐
│ Excalidraw │
│ scene (live) │
└────────────────┘
- Two modes - "staging" lets you sketch seed content client-side; "live" hands the canvas over to the agent, biases OpenAI Realtime transcription toward staging text and labels, and starts streaming transcripts.
- Local server, local network only - the Express + Web