Skip to content

vaeho/Varchiver

Repository files navigation

Varchiver

Varchiver icon

Varchiver is a desktop app for organizing snowboard and action-footage trips, cutting highlights quickly, building simple compilations, and uploading straight to YouTube without turning the workflow into a full NLE.

It is built for a single operator handling lots of 4K footage and wanting a fast loop:

  1. Import a trip
  2. Mark highlights and cut clips
  3. Build a compilation if needed
  4. Export or upload

Varchiver is currently in release-candidate stabilization. The core workflow is implemented and actively being hardened before public beta.

Screenshots

Library and Grid

Varchiver grid view

Clip Editor

Varchiver editor view

Compilation Editor

Varchiver compilation view

What It Does

  • Organizes footage by trip with simple Raw and Highlights structure
  • Imports local files and folders into a desktop-first library
  • Preserves original footage and supports reference-in-place storage
  • Creates trimmed highlight clips as real assets in the grid
  • Builds compilations from multiple assets
  • Exports with presets or advanced controls
  • Uploads directly to YouTube with playlist support
  • Tracks upload state and keeps generated artifacts local

Product Scope

Varchiver is intentionally focused on lightweight, repeatable trip workflows.

Included in the current MVP:

  • Trip library with asset grid and inspector
  • Clip trimming
  • Static reframe / crop
  • Simple zoom presets
  • Whole-clip mute
  • Compilation building
  • Bulk export and upload from the trip view
  • YouTube OAuth and upload queue

Workflow

1. Import

  • Create or open a trip
  • Import files or folders
  • Browse footage in the grid

2. Find Highlights

  • Mark assets as highlights
  • Open the clip editor for precise trim and framing
  • Save clips back into the grid as highlight assets

3. Build a Compilation

  • Select multiple assets
  • Create a compilation from the toolbar
  • Reorder and preview the full sequence

4. Export or Upload

  • Export assets locally with presets or advanced controls
  • Upload directly to YouTube
  • Reuse matching exports when appropriate
  • For untouched source assets, choose between uploading the original file or preparing a compressed upload

Tech Stack

  • Electron
  • React + TypeScript
  • Vite
  • SQLite + Drizzle ORM
  • FFmpeg + FFprobe
  • YouTube Data API v3

Local Development

Requirements

  • Node.js 20+
  • pnpm 10+

Install

pnpm install

Run

pnpm dev

Validate

pnpm typecheck
pnpm build

Package

pnpm package:mac
pnpm package:win

YouTube Setup

The app uses the YouTube Data API for uploads and playlist creation.

You will need Google OAuth credentials:

  • OAuth Client ID
  • OAuth Client Secret

Those are configured inside the app’s Settings panel before connecting a YouTube account.

Default upload visibility is Unlisted.

Data and Generated Files

Varchiver keeps app data in the standard OS app-data location.

On macOS that includes folders like:

  • ~/Library/Application Support/varchiver/exports
  • ~/Library/Application Support/varchiver/proxies
  • ~/Library/Application Support/varchiver/thumbnails

Original source footage is never deleted automatically.

License

MIT

About

Desktop app for organizing action footage, cutting highlights, building compilations, and batch uploading directly to YouTube.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors