Docs

Docs

The essentials, and how to get the most out of them.

Keyboard shortcuts

Shortcuts are ignored while focus is in a text field, so typing a project name or a number never toggles playback.

Space Play / pause
← / → Scrub ±5s
Alt + ← / → Fine scrub ±1s
Shift + ← / → Previous / next track
Home Restart current track
F Toggle browser-fill
Shift + F Toggle true fullscreen
Esc Exit fullscreen
H Toggle audio HUD
Ctrl / Cmd + S Save project
Ctrl / Cmd + E Open export dialog

Project file format

Projects save as .zestial.json, a plain versioned JSON document describing your canvas, layers, overlays, parameter bindings, and any custom shaders. Custom GLSL effects are embedded, so a project file is fully self-contained and travels with you.

Audio isn't embedded (it never leaves your machine). The first time you open a project, Zestial asks you to point it at your files. After that it remembers where they sit on this device, so the same project reopens with its audio attached, sometimes after one click to let the browser grant access again. Firefox and Safari lack the API this needs, so they ask every time.

Canvas sizes

Pick 16:9, 1:1 or 9:16 above the preview. Export follows whatever shape you chose, so a portrait composition exports as a portrait video. The resolution you pick sets the short edge, so "1080p" is 1920×1080 wide, 1080×1080 square, or 1080×1920 portrait.

Zestial Cloud

Cloud is optional and completely separate from the editor. Everything above works forever without an account, offline, with no upload.

If you subscribe, you get passwordless sign-in (we email you a code), projects and presets synced across your devices, unlisted share links, and a history of your exports. Your audio is never uploaded, not on the free tier and not on Cloud. A shared composition therefore arrives silent, and whoever opens it adds their own track.

You can download everything Cloud holds for you, or delete your account and all of it, from the Cloud panel in the app. See the privacy page for exactly what's stored.

Custom effects

The Custom Effects editor lets you write GLSL fragment shaders with a live preview as you type, or build them visually in the node graph. The custom effects reference covers the @param directives that turn a uniform into a bindable control, and what the editor gives you for free.