Skip to content

Commit 68ae01b

Browse files
committed
feat: integrate Recall.ai SDK for automatic meeting recording
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.
1 parent 3f8aa61 commit 68ae01b

File tree

16 files changed

+965
-20
lines changed

16 files changed

+965
-20
lines changed

forge.config.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ import type { ForgeConfig } from "@electron-forge/shared-types";
77

88
const config: ForgeConfig = {
99
packagerConfig: {
10-
asar: true,
10+
asar: {
11+
unpack: "node_modules/@recallai/**",
12+
},
1113
name: "Array",
1214
executableName: "Array",
1315
icon: "./build/app-icon", // Forge adds .icns/.ico/.png based on platform

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
"@posthog/agent": "1.15.0",
7070
"@radix-ui/react-icons": "^1.3.2",
7171
"@radix-ui/themes": "^3.2.1",
72+
"@recallai/desktop-sdk": "^1.3.0",
7273
"@tanstack/react-query": "^5.90.2",
7374
"@tiptap/extension-link": "^3.6.6",
7475
"@tiptap/extension-mention": "^3.6.6",

pnpm-lock.yaml

Lines changed: 73 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)