Skip to content

Implement Recording Support and Cross-Platform FFmpeg Installation

Choose a tag to compare

@damianvtran damianvtran released this 08 Jun 19:03
· 215 commits to main since this release
8cbbd53

What's Changed

This release introduces beta support for recording capabilities (audio and video) in the UI with cross-platform FFmpeg installation logic for Electron. It also includes various UI/UX improvements related to file viewing, editing, and general application usability.

  • This is a new feature implementation and refactoring to enable multimedia recording and enhance the overall user interface and development experience.
  • Key improvements or modifications:
    • Recording UI: Integrated audio and video recording functionality directly into the chat message input, with corresponding UI elements (start/stop/confirm/cancel buttons).
    • Cross-Platform FFmpeg Installation: Added robust scripts for Linux, macOS, and Windows to automatically download and install FFmpeg binaries during the backend setup, ensuring recording capabilities are available out-of-the-box.
    • Entitlement Updates: Updated entitlements.mac.plist to include com.apple.security.device.camera, com.apple.security.device.microphone, and com.apple.security.device.screen-capture for macOS.
    • File Viewer Enhancements: Improved canvas-file-viewer.tsx to handle duplicate file names more robustly and code-editor.tsx for better content change detection.
    • HTML Preview: Added key prop to HtmlIframe to force re-render on content changes.
    • Development Environment: Switched dev script in package.json to use dotenv-cli for better environment variable management.
    • UI/UX Refinements: Added keyboard shortcuts for confirmation modals and recording controls, and a "Copy File Path" option to the file actions menu.

Impact

  • Does this change introduce any breaking changes? No breaking changes; it's additive and backward-compatible.
  • Are there any dependency updates? Added dotenv-cli as a development dependency. FFmpeg is now a runtime dependency handled by install scripts.
  • Are there any performance or security implications? Improved performance for file handling; security enhancements include proper entitlement requests for recording and robust FFmpeg installation.

PRs

  • feat: Implement Recording UI and Cross-Platform FFmpeg Installation by @damianvtran in #66

Full Changelog: v0.10.9...v0.11.0