Skip to content

Latest commit

 

History

History
141 lines (112 loc) · 9.76 KB

File metadata and controls

141 lines (112 loc) · 9.76 KB

Back to Project

MasterSelects Documentation

Current feature documentation for the staging branch.

Version 2.0.6 | May 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, transitions, shortcuts, and keyframes
Node Workspace Dockable selected-clip processing graph derived from live timeline state
AI Control OpenAI/Cloud or local Lemonade chat with 86 exported model tools plus local/native bridge access for external agents
Media Generator Tray FlashBoard video/image/audio generation embedded in the Media Panel with queue previews and media import
3D Layers Shared-scene 3D layers, camera clips, Gaussian splats, and splat effectors
Vector Animation Lottie and Rive clips with canvas playback, bounce modes, render resolution overrides, keyframed state/data inputs, and export
Audio Timeline-native workstation audio with artifact-backed analysis, spectral editing, mixer, recording, and export parity
Screen Capture Browser-picker screen/window/tab recording with audio mixing, durable recovery, and optional timeline placement
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
Transition Compositions Mapped-v3 transition source layout, templates, parity, and explicit legacy upgrades
Timeline Rulers Stacked multi-ruler lanes (time/timecode/frames/bars) via the Rulers checklist, TempoMap-driven bars+beats, per-composition persistence, and the click-to-select active-lane seam (#257)
Slot Grid 12x4 live grid overlay, slot clip trimming, layer triggering, and deck warmup behavior
Keyframes Animated properties, effect params, masks, 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
Node Workspace Selected-clip graph view, Media Board canvas behavior, and current render boundary
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
Linux / Mesa GPU Read before touching any canvas/GPU code — Mesa silent-failure modes and the rules/gates that prevent "blank on Linux" regressions
Media Runtime Shared source/runtime registry, decode sessions, frame-provider reuse, and slot/background playback bindings
Effects Current effect registry, timeline transitions, categories, quality controls, and inline effect behavior
Color Correction Planned node/list color tab, graph data model, GPU pipeline, scopes, and realtime grading workflow
Professional Color Correction Plan Tactical roadmap for wheels, curves, LUTs, secondaries, float precision, scopes, compare, and presets
Masks Overlay mask editing, whole-path keyframes, feathering, and stored modes
Text Clips Canvas-backed text rendering, typography controls, and timeline text items
Motion Design Motion layer schema, property registry, rectangle/ellipse shape editing, GPU renderer, and persistence/export plumbing
3D Layers Shared-scene path, native Gaussian splats, cameras, and splat effectors
Vector Animation Lottie/Rive import, runtime playback, bounce modes, state-machine keyframes, Rive data binding, and export behavior
Audio Playback sync, clip audio state, waveform/spectral display, recording, and export
Screen Capture Screen/window/tab recording, audio mixing, WebCodecs crop/scale, recovery, and diagnostics
Audio Workstation Target audio architecture, timeline detail mode, docked mixer, artifact refs, and analysis efficiency
Export WebCodecs fast/precise export, animated GIF, FFmpeg intermediates, image frame/sequence export, 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
Signal IR Contract layer for universal media signals, capability-gated runtime providers, and the Wasm/WIT ABI
Media Downloads 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/Cloud and Lemonade chat, 86 exported model tools, segmentation, transcription, and bridge behavior
Credit Claims Cloudflare-backed reward links for manually granted hosted credits
Guided Action Runtime Plan Target architecture for AI action replay, interactive tutorials, guided workflows, and parallel implementation workstreams
FlashBoard Media Panel generation tray for video, image, speech, and music 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
Codex Usage Monitoring Local Codex session parser for per-turn token usage, stale-run detection, and Git commit attribution
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, artifact-backed analysis, spectral display, clip/track/master FX, recording
AI                OpenAI/Cloud chat, local Lemonade chat, Kie.ai, hosted ElevenLabs/Suno, EvoLink, PiAPI-compatible catalog paths, 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 2.0.6.
  • 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 mapped through the shared AI tool dispatcher in the current branch.
  • Gaussian AI tool definitions exist in code but are not exported through AI_TOOLS yet, so the public model-exposed count is 86 rather than the larger raw definition-file count.
  • 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: 2.0.6.