Skip to content

Latest commit

 

History

History
126 lines (97 loc) · 6.98 KB

File metadata and controls

126 lines (97 loc) · 6.98 KB

Back to Project

MasterSelects Documentation

Current feature documentation for the staging branch.

Version 1.5.4 | April 2026


Overview

MasterSelects is a browser-based WebGPU compositor and media editor with timeline editing, nested compositions, AI-assisted workflows, project-local media management, and an optional native helper for the browser gaps that still matter.

The docs in this folder were re-audited against the current codebase and now track the active implementation instead of older roadmap claims.

Current Highlights

Capability Description
WebGPU Rendering Shared render path for main preview, independent targets, output windows, and export
Timeline Editing Multi-track editing, nested compositions, markers, shortcuts, and keyframes
AI Control OpenAI chat with 79 exported tools plus local/native bridge access for external agents
AI Video Workspace Classic AI Video plus FlashBoard board-mode generation and media import
3D Layers Shared-scene 3D layers, camera clips, Gaussian splats, and splat effectors
Vector Animation Lottie clips with deterministic canvas playback, looping, and export
Audio Element-synced playback, drift correction, waveform extraction, EQ, and audio export
Project Storage project.json source of truth, RAW-copy-first media flow, autosave, relink, backups
Native Helper Firefox storage backend, yt-dlp download flow, local AI bridge, native jobs
Security And Debugging Token-gated bridges, allowed-root file policy, playback monitors, logger tooling

Documentation Index

Core Editing

Document Description
Timeline Tracks, clips, nested comps, markers, selection, and editing flow
Slot Grid 12x4 live grid overlay, slot clip trimming, layer triggering, and deck warmup behavior
Keyframes Animated properties, effect params, fades, easing, and visibility rules
Preview Main preview, source monitor, output windows, RAM preview, and target routing
UI Panels Dock layout, panel catalog, properties tabs, mobile UI, and workspace surfaces
Keyboard Shortcuts Current shortcut registry, playback controls, and preset behavior

Rendering And Media

Document Description
GPU Engine WebGPU engine, render loop, fallback paths, caches, and export boundary
Media Runtime Shared source/runtime registry, decode sessions, frame-provider reuse, and slot/background playback bindings
Effects Current effect registry, categories, quality controls, and inline effect behavior
Masks Overlay mask editing, feathering, stored modes, and current limitations
Text Clips Canvas-backed text rendering, typography controls, and timeline text items
3D Layers Shared-scene path, native Gaussian splats, cameras, and splat effectors
Vector Animation Lottie import, runtime playback, looping, and export behavior
Audio Playback sync, EQ, waveform extraction, audio clip behavior, and export
Export WebCodecs fast/precise export, FFmpeg intermediates, image/audio-only export, FCPXML, and project-persistent presets
Proxy System Proxy generation, on-disk frame layout, audio proxies, and warmup behavior
Media Panel Import flow, RAW-copy promotion, folders, compositions, and relinking
Project Persistence Save/load model, IndexedDB handle cache, continuous save, interval save mode, relink, and project roots
Download Panel yt-dlp-backed downloads, platform mapping, and cookie retry behavior
Native Helper Local HTTP/WebSocket APIs, auth startup token, and helper-backed flows

AI, Security, And Operations

Document Description
Landing Page Dev-only front page concept, separate URL strategy, and current landing/editor split
AI Integration OpenAI chat, 79 exported tools, segmentation, transcription, and bridge behavior
FlashBoard Board-mode AI canvas for text-to-video, image-to-video, and image generation
Multicam AI Sync, transcription, multicam analysis, and Anthropic-powered EDL generation
Debugging Logger service, runtime monitors, log sync, and AI-facing debug tools
Playback Debugging Focused workflow for preview stalls, drift, and decode/render mismatches
Security Trust boundaries, bridge auth, allowed roots, secret handling, and limitations
Hosted AI Setup Cloudflare Pages/API setup for hosted account, billing, and AI routes
Visitor Notifier Cloudflare visit feed, /api/visits, and the Windows tray notifier workflow

Current Stack

Frontend          React 19 + TypeScript + Vite 7.x
State             Zustand with modular timeline and media slices
Rendering         WebGPU + WGSL + shared-scene 3D runtime
Media             MediaBunny, WebCodecs, HTML media fallback paths
Audio             Web Audio API, EQ, drift correction, waveform extraction
AI                OpenAI chat, Kie.ai, hosted cloud, PiAPI catalog, SAM2, MatAnyone2
Persistence       File System Access API, project-local RAW copies, IndexedDB handle/cache storage
Native Helper     Rust service with HTTP/WebSocket bridge, yt-dlp, helper-backed jobs

Source Map

Area Location
UI components src/components/
Timeline UI and interactions src/components/timeline/
Preview and output surfaces src/components/preview/, src/components/outputManager/
Panels and workspace shells src/components/panels/
State stores src/stores/, src/stores/mediaStore/
GPU engine src/engine/
Effects and shaders src/effects/, src/shaders/, src/transitions/
Services and bridges src/services/
Native helper tools/native-helper/

Audit Notes

  • The authoritative app version is src/version.ts, currently 1.5.4.
  • Preview quality is wired into engine-backed preview resolution through useEngine(); it does not affect export resolution or the HTML-only source monitor.
  • openComposition and searchVideos are still the two known AI dispatch gaps.
  • Gaussian AI tool definitions exist in code but are not exported through AI_TOOLS yet.
  • This index intentionally points to implementation docs, not roadmap claims.

Version History

See src/version.ts and src/changelog-data.json for the authoritative changelog. Current version: 1.5.4.