Meeting notesCAN I VIBECODE
Otter.ai?
BUILD FIRST
- One specific customer type and one primary use case
- A vertical slice that completes the main job without manual workarounds
- Visible limits, review steps, and a fallback when an external dependency fails
LEAVE FOR LATER
- Broad third-party integrations
- High-scale collaboration, syncing, and permissions
- Automation that can cause harm without human review
RESEARCH NOTES
What this tool actually does.
Otter.ai is a cloud-based AI meeting notetaker that records, transcribes, and summarizes meetings in real time. It works across Zoom, Microsoft Teams, and Google Meet via an auto-joining bot (Otter Notetaker) synced to Google/Outlook/iOS calendars, plus a desktop app for bot-free Mac/Windows recording and iOS/Android/Web apps. Features include live transcription with speaker identification, editable speakers/timecodes, synced audio-text playback, live captions for Zoom/Google Meet, automated slide capture, and summaries with decisions, action items, and keywords. Otter AI Chat answers questions across recorded meetings and connected apps. It also imports pre-recorded audio/video files, supports team tagging/comments/action assignment, groups meetings by team/project/topic, and offers admin controls with centralized billing, user management, and reporting. Pricing tiers: Free (25 stored m
RESEARCHED BUILD PROMPT
Give this to your coding agent.
Build "MeetScribe", a focused replacement for Otter.ai's core meeting-notes workflow. The user records a live meeting through a web app or uploads an audio/video file; the system transcribes it with speaker labels and then generates a summary containing decisions, action items, and keywords. Users can edit the transcript and speaker names, and play back the recording with highlighted words synced to audio. Implementation: a single-page React (Vite + TypeScript) frontend and a Node.js/Express backend using SQLite. For live recording, capture mic audio via getUserMedia and MediaRecorder, stream chunks to a /transcribe endpoint (use the Whisper API for segments, or a local whisper.cpp binary), and store word-level timestamps. For uploads, accept MP3/MP4 via multer and run the same pipeline offline. For speaker labels, use a simple heuristic (label change when a new segment has a distinct energy/voice profile) or integrate a diarization model; note this as a limitation. After the meeting, call a /summarize endpoint that uses the OpenAI chat completions API to extract action items, decisions, and keywords from the full transcript. Build the workflow: create a meeting, live/upload recording, editable live transcript panel, edit transcript/speakers, clickable words that scrub playback, summary view with a copyable action-item list, and a meeting list grouped by project/tag with text search. Add auth via bcrypt sessions and store meetings per user. Include a clean, accessible CSS design — do not copy Otter.ai's branding, logo, layout, or design language. Out of scope: calendar sync, Zoom/Teams/Meet bot joining, mobile apps, slide capture, team collaboration, admin dashboards, cross-meeting AI chat, and multi-channel speaker diarization. Provide a README with setup steps, required env vars (OPENAI_API_KEY, port, DB path), architecture overview, and known limitations (diarization accuracy, API latency on long meetings, single-user default, browser support, file size caps).