Skip to content

mieweb/pulse-desktop

Repository files navigation

Pulse Desktop

Check out pulse to get pulse and this repo together.

Minimal push-to-hold screen recorder for macOS and Windows

Push-to-hold screen capture with the simplicity of a walkie-talkie. Press Cmd+Shift+R (macOS) or Ctrl+Shift+R (Windows), hold to record, release to save. Videos are automatically saved to your Movies folder.

🚧 Architecture Update: Migrating from FFmpeg-based transcoding to native OS APIs (ScreenCaptureKit + Desktop Duplication) for better performance and Retina support. See MIGRATION_NOTES.md for details.

Features

  • Push-to-hold recording - Press and hold to record, release to save
  • Global hotkey - Works from any application (Cmd+Shift+R / Ctrl+Shift+R)
  • Full screen capture - Records entire display at 30 FPS
  • 🚧 MP4 video output - Migrating to native H.264 encoding (hardware accelerated)
  • Sequential file naming - recording-1.mp4, recording-2.mp4, etc.
  • Automatic folder creation - Saves to ~/Movies/PushToHold (macOS) or ~/Videos/PushToHold (Windows)
  • ⏳ Microphone audio toggle (coming soon)
  • ⏳ Region selection with aspect ratio presets (coming soon)

System Requirements

macOS

  • macOS 11.0 or later
  • Screen Recording permission (prompted on first use)
  • FFmpeg (temporary, until native implementation complete)
    brew install ffmpeg

Windows

  • Windows 10 or later
  • FFmpeg (temporary, until native implementation complete)

Quick Start

Prerequisites

  • Deno - JavaScript/TypeScript runtime (install)
  • Rust - For Tauri backend (install)
  • Xcode Command Line Tools (macOS only)
    xcode-select --install

Running the App

# Clone and navigate to the project
cd pulse-desktop

# Run in development mode
deno task tauri dev

This will:

  1. Start the Vite dev server (React frontend)
  2. Compile and run the Rust/Tauri backend
  3. Open the desktop application window

Other Commands

# Build for production
deno task tauri build

# Run frontend only (UI development)
deno task dev

# Run tests
deno task test

Using Pulse Desktop

  1. Launch the app - Run deno task tauri dev
  2. Create/select a project - Choose a project name for organizing your recordings
  3. Record - Press and hold Cmd+Shift+R (macOS) or Ctrl+Shift+R (Windows)
  4. Release to save - Your recording is automatically saved
  5. Manage clips - View your timeline, drag to reorder clips, edit labels, or delete

Timeline Features

  • Drag-drop reordering - Click and hold any clip, drag to new position (blue pulsing line shows where it will drop)
  • Keyboard navigation - Use arrow keys to navigate, Cmd+Arrow to reorder
  • Edit labels - Click on any clip filename to rename
  • Undo/Redo - Cmd+Z / Cmd+Shift+Z for timeline changes

Development

Recommended IDE Setup

Running for developers

npm install
npm run tauri dev

About

Pulse Cam Desktop

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors