Meeting Note Recorder is a macOS Electron application that detects online meetings, records audio/video via the Recall.ai desktop SDK, captures live transcripts, and provides a unified React-based UI for note taking, transcript review, and AI-assisted coaching.
- macOS 13+
- Node.js 20+
- npm 10+
- Xcode Command Line Tools (
xcode-select --install) - Recall.ai desktop SDK account and API key
- Google Cloud project with OAuth credentials for Calendar API
- (Optional) Anthropic API key for real-time coaching features
- (Optional) Notion integration token + database IDs for automated todo syncing
- Clone the repository and install dependencies:
git clone <repo-url> cd meeting-note-recorder npm install
- Copy
.env.exampleto.envand populate the secrets you have been granted. Do not commit personal keys. - Build the desktop app:
npm run build
- Start the development environment:
This launches webpack watchers for main, preload, and renderer bundles and opens Electron pointed at
npm run dev
http://localhost:9000.
npm run distcreates a notarization-ready DMG atdist-app/(codesigning must be completed manually by whoever has signing rights).- After copying the
.appbundle, teammates need to runsudo codesign --force --deep --sign - /Applications/Meeting\ Note\ Recorder.appto preserve accessibility permissions across restarts.
npm run lint– TypeScript lint rules acrosssrc/(currently emits unused-variable warnings; triage before release).npm test– Runstest-production.js. In non-interactive shells it only validates app start/stop; to exercise manual steps run from a terminal with the Electron window visible and follow prompts.- Additional scripts (
test-interactive.js,test-production.js, etc.) live at repo root for manual workflows.
Recent automated run (2025-10-19) reports only warnings when running non-interactively: missing log file detection and manual tests skipped. Ensure a fully interactive run before sharing release notes.