Current feature documentation for the staging branch.
Version 2.0.6 | May 2026
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.
| 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 |
| 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 |
| 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 |
| 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 |
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
| 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/ |
- The authoritative app version is
src/version.ts, currently2.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. openCompositionandsearchVideosare mapped through the shared AI tool dispatcher in the current branch.- Gaussian AI tool definitions exist in code but are not exported through
AI_TOOLSyet, 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.
See src/version.ts and src/changelog-data.json for the authoritative changelog.
Current version: 2.0.6.