< Back to projects
transcript-editor
Transcript editing with speaker-tagged segments.
TypeScriptReactNext.jsLexicalSupabasePythonWhisperXDocker
Why I built this
At 7C Lingo, a client needed meeting transcription for union and company meetings. The team had been typing notes manually, and third-party tools were not a good fit.
How it works
audio upload → whisperx job → transcript segments → rich text editor → export (txt/docx/pdf)WhisperX runs in Docker, then the frontend turns results into speaker-tagged time segments. Each segment has a Lexical editor with bold, italic, color, and highlights. Blur commits Lexical JSON without React state churn. Exports produce DOCX, PDF, or plain text, with Supabase persistence.
Decisions
Lexical over a simpler editor
The client needed highlights and speaker color-coding. The tradeoff is complexity.
Segment-level editing
One editor per line makes speaker labels and timestamps simple and avoids one giant document instance.