Install · v0.0.2

Get it running.
About five minutes.

Boopster is a side-loaded UXP plugin for Premiere Pro 26.2+. There's no Marketplace build yet — we're in the dev-loading phase. The installer below handles every yak-shave.

macOS today / Linux works manually / Windows next iteration

The easy path

Three ways in. Pick the one that bugs you least.

All three end up identical — they run the same install.sh, show the same dialogs, install the same engine. The difference is which macOS warning you click through first.

01

Terminal one-liner

Always works

No Gatekeeper drama. Open Terminal (⌘-Space → "Terminal"), paste, hit return.

curl -sSL https://boopster.iffun.ru/install.sh | bash
03

Native .app installer

Gatekeeper hoop

Looks like any other Mac app, but unsigned. macOS 14+ shows "can't be opened because Apple cannot check it" on first launch. Fix: open System Settings → Privacy & Security, scroll to the bottom, click Open Anyway. After that it launches normally.

Boopster-Installer.dmg macOS · ~2 MB · ad-hoc signed

All three do the same thing: check Python ≥ 3.10 / ffmpeg / chromaprint / Node 20+ · brew install anything missing · clone the engine · pip install -e core · build the panel JS bundle · write ~/.boopster/config.json · open Finder on the manifest file so you drag it into UDT.

Gatekeeper will go away once we pay Apple $99 for the Developer Program (planned). Until then: Path 01 is the smoothest experience.

Step 01 — Prerequisites

What you need on this machine.

Adobe Premiere Pro26.2 or newer (April 2026+). UXP panels don't exist in older versions.
macOS12 Monterey or newer · Apple Silicon recommended, Intel fine
Python3.10 – 3.13 · macOS ships ancient Python, use brew install python@3.13
Node.js20+ · only used to build the panel JS bundle
ffmpeg + chromaprintbrew install ffmpeg chromaprint · the engine fingerprints audio with these
UXP Developer ToolCreative Cloud → Apps → search "UXP Developer Tool" (free)
Adobe IDAny free account · UDT requires sign-in

The installer auto-installs the brew-able ones if you ask it to.

Step 02 — Run the installer

Either path is fine. Pick one.

Path A — Curl one-liner

curl -sSL https://boopster.iffun.ru/install.sh | bash

Native macOS dialogs walk you through. About 3-5 min on decent Wi-Fi.

Path B — Manual clone

git clone https://github.com/iffun/boopster.git \
  ~/Documents/Develop/Boopster
cd ~/Documents/Develop/Boopster
python3 -m venv .venv && source .venv/bin/activate
pip install -e core[dev]
brew install ffmpeg chromaprint
boopster doctor          # should be all ✓
cd adapters/premiere-uxp
npm install && npm run build

Same end state, you just see every step.

Pro tip: boopster doctor dumps a full diagnostic (deps, paths, config). Paste its output into any GitHub issue and we can debug from there.

Step 03 — Side-load into Premiere

UXP Developer Tool does this part.

  1. Premiere Pro 26.2+Settings → Plugins → check Enable Developer Moderestart Premiere. One-time. Without this, UDT can't see Premiere.
  2. Open UXP Developer Tool (install via Creative Cloud → Apps if you don't have it). Sign in with your Adobe ID.
  3. Click Add Plugin… (top-right). Point at:
    ~/.boopster/app/adapters/premiere-uxp/manifest.json
    The installer auto-reveals this file in Finder for you — just drag it onto the UDT window if you prefer.
  4. Boopster shows up in the plugin list with Premiere as the connected app. Click •••Load.
  5. Switch to Premiere → Window → Extensions → Boopster — Sync. The panel docks like any other.

How it actually works

Two parts. Daemon + Panel.

UXP plugins can't spawn subprocesses (Adobe security policy). So the Python engine runs as a tiny always-on daemon, and the Premiere panel talks to it over http://127.0.0.1:7878.

┌────────────────────┐    POST /sync-stream    ┌──────────────────────┐
│  Premiere UXP      │ ──────────────────────▶ │  boopster serve      │
│  panel (TypeScript)│   localhost:7878        │  (FastAPI daemon)    │
└────────────────────┘ ◀────────────────────── │  Python engine inside│
                       SSE progress + IR JSON  └──────────────────────┘

The installer registers a LaunchAgent so the daemon auto-starts on every login. Check status with boopster doctor. Restart manually with launchctl unload/load ~/Library/LaunchAgents/ru.iffun.boopster.engine.plist.

Don't have Premiere?

One command. FCPXML out.

If you'd rather get a synced FCPXML and import it into whatever NLE you use:

boopster build /path/to/folder -o synced.fcpxml

FCPXML 1.13 — opens in Premiere, DaVinci Resolve, Final Cut Pro via File → Import. Multi-cam sequence, drift correction baked in.

Step 04 — First sync

The reason you did all this.

Panel works in two modes — pick whichever fits your workflow:

  1. 📁 Selected Bin — import clips into a Premiere bin first. Select that bin (or shift-click some clips) in the Project panel, click Detect, then Sync ▶. Boopster fingerprints them and builds fresh synced sequences in a new Boopster bin.
  2. 🎬 Active Sequence — drag your camera angles onto separate tracks of a sequence (they don't need to be aligned). Open that sequence, click Detect, then Sync ▶. Boopster repositions the existing clips in place — one undo step to bail out.

Status bar streams real-time progress (fingerprint 3/5 · match 7/10) via Server-Sent Events from the daemon. First run is 3-5 s per clip; subsequent runs on the same files skip already-fingerprinted data.

Step 05 — When it doesn't work

Five things that go wrong. All fixable.

UDT can't see Premiere

Premiere must be already running before you click Load. In UDT Settings, confirm Premiere appears under "Connected applications". If not — restart UDT after Premiere is open.

Panel says "Engine offline" / "Can't reach the Boopster engine"

The plugin couldn't reach the daemon at http://127.0.0.1:7878. Run boopster doctor to see what's wrong. Two common causes:

  • LaunchAgent not loaded (or never installed): run boopster install-agent, OR run boopster serve in a Terminal window and leave it open.
  • Engine in ~/Documents/ → TCC blocks LaunchAgent. macOS prevents background processes from reading Documents/ without Full Disk Access. Either move to ~/.boopster/app/ (clean install location), or run the daemon manually in Terminal.
"Permission denied: launchProcess"

First run shows a Premiere permission dialog. If you clicked Deny: Premiere → Preferences → Permissions → Boopster → Allow launchProcess + localFileSystem.

No edges found / "unmatched" everywhere

The audio across cameras has to overlap and be loud enough for chromaprint to find common features. Lower the matcher threshold in the panel's Advanced drawer (try 0.55 instead of the default 0.70).

Multi-chunk clips (GoPro GH010001.MP4 + GH020001.MP4)

Boopster auto-detects camera chunks and treats them as one logical clip. Don't pre-merge them — durations get summed, fingerprint only runs on the first chunk.

Still broken? Run boopster doctor, copy the output, email hi@iffun.ru. We read every one.

Lifecycle

Update. Or remove. No drama either way.

Update

cd ~/Documents/Develop/Boopster
git pull
source .venv/bin/activate
pip install -e core --upgrade-strategy eager
cd adapters/premiere-uxp && npm run build

In UDT click Reload on the Boopster row. No Premiere restart needed.

Uninstall

  1. UDT → Boopster row → ••• → Remove
  2. rm -rf ~/.boopster ~/Documents/Develop/Boopster

That's it. No system services, no registry keys, no LaunchDaemons. Boopster never installs anything outside the folders above.