feat: add live transcript viewing for meeting recordings#74
Closed
lucasheriques wants to merge 2 commits intomainfrom
Closed
feat: add live transcript viewing for meeting recordings#74lucasheriques wants to merge 2 commits intomainfrom
lucasheriques wants to merge 2 commits intomainfrom
Conversation
Add Recall.ai Desktop SDK integration for automatic detection and recording of Zoom, Teams, and Google Meet meetings with real-time status updates and management UI. Features: - Automatic meeting detection (Zoom/Teams/Google Meet) - Recording lifecycle with status updates (recording → uploading → processing) - Notetaker UI for viewing and managing recordings - PostHog backend integration for storage and backup - IPC handlers for renderer/main process communication Security: - Proper URL hostname validation (prevents substring injection) - UUID validation for recording IDs (prevents path traversal) - Title-based detection only as fallback with warning logs Architecture: - Recall SDK runs in main process with event listeners - PostHog API client for CRUD operations on recordings - Zustand store for UI state management - Status updates via IPC from main to renderer Configuration: - Vite: externalize Recall SDK (prevent bundling) - Forge: unpack Recall SDK from asar archive - Initialize SDK automatically on authentication This PR implements Phase 1B of the desktop recordings feature, providing the foundation for future transcript streaming and note-taking capabilities.
- Add RecordingView component with comprehensive recording detail display - Display meeting header (title, platform, timestamp) - Scaffold 4 main sections with "Coming soon" placeholders: - Summary (AI-generated) - Action items (AI-extracted tasks) - Notes (user-written with timestamps) - Transcript (live or historical) - Implement live transcript with auto-scroll - Auto-scroll to bottom as new segments arrive - Manual scroll disables auto-scroll until near bottom - Only show auto-scroll hint for active recordings - Use native scrollable Box instead of ScrollArea for better control - Product-focused hierarchy: actionable info (summary/tasks) above reference (transcript) - Transcript constrained to 300px max-height to leave room for other sections
This was referenced Oct 29, 2025
lucasheriques
added a commit
that referenced
this pull request
Oct 29, 2025
## Summary
- Extract unique participants from transcript segments when recording ends
- Display participant count and names in RecordingView header
- Show participants as blue badges below meeting metadata
## Implementation
**Client-side extraction** (`recordingService.ts`):
- When meeting ends, extract unique participants from all transcript segments
- Single-pass array operation with Set deduplication (efficient even for 1000+ segments)
- Update recording with participants list via API
**UI Display** (`RecordingView.tsx`):
- Show participant count in header metadata ("3 participants")
- Display participant names as blue badges
- For active recordings: extract from current segments
- For past recordings: use stored participants field
## Notes
Builds on #74 (live transcripts) which provides the RecordingView component.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
RecordingViewcomponent to display full meeting details with live transcriptImplementation
RecordingView component (
src/renderer/features/notetaker/components/RecordingView.tsx):NotetakerView integration (
src/renderer/features/notetaker/components/NotetakerView.tsx):RecordingViewwhen a recording is selectedrecordingItemto componentNotes
This PR builds on #73 which provides the foundation (hooks, stores, keyboard navigation).