docs
getting started

getting started

screenpipe offers multiple installation methods depending on user needs and technical proficiency. whether you are a developer looking to use the cli or a user who wants a more plug-and-play desktop app, screenpipe provides flexible options to get started quickly.

for non technical users or those who want to get started quickly, we recommend getting the desktop app here (opens in a new tab).

quickly start the CLI on MacOS with:

brew tap mediar-ai/screenpipe https://github.com/mediar-ai/screenpipe.git
brew install screenpipe
screenpipe

then

open screenpipe-server/examples/timeline_ui/index.html # or open manually in your browser

this will open a rewind.ai alike timeline powered by a single html file :) that you can tweak around!

1. installation options

cli installation

  • for technical users: screenpipe can be installed and used via the command-line interface (cli).
  • instructions:
    1. clone the repository.
    2. install dependencies (ensure rust, cargo, and any other required tools are installed).
    3. build the project and run the cli.

desktop app

  • paid desktop app: offers priority support, 1-year updates, and exclusive features. users can download and install the desktop app directly from the official site.
  • free desktop app: open-source and available to build yourself. installation requires building from the source code or sending a pr to the repository. both options provide a fully functional desktop application with all key features.

manual build

for users preferring full control or customization, building the app manually from the repository is an option. this method requires rust and other necessary dependencies. follow the provided build guide to compile the app.


macos installation

option 1: build from source (for advanced users)

  1. start by installing rust and all necessary dependencies:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    brew install pkg-config ffmpeg jq cmake wget
  2. install bun cli (required for building):

    curl -fsSL https://bun.sh/install | bash
  3. clone the screenpipe repository:

    git clone https://github.com/mediar-ai/screenpipe
    cd screenpipe
  4. build the project with:

    cargo build --release --features metal
  5. finally, run screenpipe:

    ./target/release/screenpipe

add this to your vscode settings in the root of the project .vscode/settings.json:

{
   "rust-analyzer.cargo.features": [
      "metal",
      "pipes"
   ],
   "rust-analyzer.server.extraEnv": {
      "DYLD_LIBRARY_PATH": "${workspaceFolder}/screenpipe-vision/lib:${env:DYLD_LIBRARY_PATH}",
      "SCREENPIPE_APP_DEV": "true"
   },
   "rust-analyzer.cargo.extraEnv": {
      "DYLD_LIBRARY_PATH": "${workspaceFolder}/screenpipe-vision/lib:${env:DYLD_LIBRARY_PATH}",
      "SCREENPIPE_APP_DEV": "true"
   },
   "terminal.integrated.env.osx": {
      "DYLD_LIBRARY_PATH": "${workspaceFolder}/screenpipe-vision/lib:${env:DYLD_LIBRARY_PATH}",
      "SCREENPIPE_APP_DEV": "true"
   }
}
cd screenpipe-app-tauri
bun install
bun scripts/pre_build.js # <- this is important to copy the CLI into the app
bun tauri build

need help? open an issue on github. (opens in a new tab)


option 2: homebrew installation (installs only CLI)

  1. to install screenpipe using homebrew, simply execute the following commands:

    brew tap mediar-ai/screenpipe https://github.com/mediar-ai/screenpipe.git
    brew install screenpipe
  2. once installed, run screenpipe with the following:

    screenpipe
  3. optional flags:

    screenpipe -h

if you require additional configurations such as running in debug mode or switching to webrtc for audio processing, you can refer to the official screenpipe cli documentation (opens in a new tab).


windows installation (experimental)

steps to install on windows

This is experimental support for Windows build. This assumes you already have the CUDA Toolkit installed and the CUDA_PATH set to my CUDA v12.6 folder. Replace V:\projects and V:\packages with your own folders.

If this does not work for you, please open an issue (opens in a new tab) or get the pre-built desktop app (opens in a new tab)

Install 7zip: https://www.7-zip.org/download.html (opens in a new tab)

choco install pkgconfiglite bun
winget install -e --id GnuWin32.UnZip
winget install -e --id Rustlang.Rustup
cd V:\projects
git clone https://github.com/mediar-ai/screenpipe
cd V:\packages
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.bat -disableMetrics
./vcpkg.exe integrate install --disable-metrics
./vcpkg.exe install ffmpeg
 
SET PKG_CONFIG_PATH=V:\packages\vcpkg\packages\ffmpeg_x64-windows\lib\pkgconfig
SET VCPKG_ROOT=V:\packages\vcpkg
SET LIBCLANG_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\Llvm\x64\bin
cd V:\projects\screenpipe
 
rustup default stable
cargo build --release --features cuda
 
cd screenpipe-app-tauri
bun install
bun scripts\pre_build.js # (you might wget not retriving error, if so use '-O' flag) <- this is important to copy the CLI into the app
bun tauri build

linux installation

option 1: build from source

  1. install dependencies with the following commands:

    sudo apt-get install -y ffmpeg tesseract-ocr cmake libavformat-dev libavfilter-dev libavdevice-dev libtesseract-dev libxdo-dev
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  2. install bun cli (required for building):

    curl -fsSL https://bun.sh/install | bash
  3. clone the repository and build the application:

    git clone https://github.com/mediar-ai/screenpipe
    cd screenpipe
    cargo build --release
  4. to run the application, use:

    ./target/release/screenpipe
  5. to build the desktop app:

cd screenpipe-app-tauri
bun install
bun scripts/pre_build.js # <- this is important to copy the CLI into the app
bun tauri build

option 2: install CLI via nix

screenpipe can be easily installed on nix-based systems. follow the instructions below:

  1. run in a nix shell:

    nix-shell -p screen-pipe
  2. or add it to your system packages:

    environment.systemPackages = with pkgs; [
      screen-pipe
    ];

after editing the configuration, rebuild your system using:

sudo nixos-rebuild switch

troubleshooting

important note for developers

if you encounter key-related errors when building from source, especially for the desktop app, you may need to sign your updates. this is particularly important for our production builds and ensuring secure update processes.

for detailed instructions on signing updates, please refer to the tauri updater documentation (opens in a new tab).

you can probably remove the updater config in your fork if you don't need it.

other options

export CARGO_PROFILE_RELEASE_LTO=true
export CARGO_PROFILE_RELEASE_OPT_LEVEL=z
export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1

to build a faster and smaller release but takes longer to build

for businesses

you can use screenpipe in your business either by:

  • running the CLI on your customer's computer
  • running the app on your customer's computer
  • embedding the library or CLI in your own software
  • running the CLI in the cloud and forward the video/audio through SSH

book a demo with our team (opens in a new tab)