Skip to main content

Features

This is a list of features that are available in the Editor Starter.

Feature flags

Many features are behind feature flags, which can be enabled or disabled by switching the flags in src/flags.ts.
Feature flags are useful:

  • To disable features you don't need
  • To search the codebase for them and find where a feature is implemented
  • To understand which features you are adopting for your own project

If a feature has a flag, you can click on it on this page to see the usages in the codebase.
The link will only work if you have bought the Editor Starter and are logged into GitHub.

Item types

We support the following item types by default:

  • Images
  • Videos
  • Audios
  • GIFs
  • Text
  • Solid
  • Captions

To learn more about them and how to add a new item type, see: Tracks, items and assets

Timeline

The timeline allows you to see a overview of the content and to scrub through the video.
Items are organized in "tracks", allowing multiple items to be placed at the same time and to allow for controlling how they overlap.

Draggable playhead

Pressing and dragging on the time ticks allows you to move the playhead and therefore the position of the video.
If you drag the playhead to the edge of the timeline, the timeline will scroll.

Zoom slider

Feature flag: FEATURE_TIMELINE_ZOOM_SLIDER

Displays a slider at the right of the toolbar allowing to zoom in and out of the timeline.

Filmstrip thumbnails

Feature flag: FEATURE_FILMSTRIP

For video items, preview images are displayed on the timeline.

Extend handles

You can drag on either side of an item to extend or shrink the item.

Audio waveform

Feature flag: FEATURE_WAVEFORM

Video and audio items display a waveform at the bottom of the timeline.

Volume control

Feature flag: FEATURE_VOLUME_CONTROL

Audio and video items display a draggable volume line on the timeline waveform. Dragging vertically adjusts the volume in decibels with a visual indicator showing the current level.

Dropping assets

An asset (image, video, audio, GIF) can be dropped on the timeline to import it and add a new layer.
The item type is detected by Remotion Media Parser and an appropriate item is created.

Fade in and out

Feature flags: FEATURE_AUDIO_FADE_CONTROL and FEATURE_VIDEO_FADE_CONTROL

Audio and video items support fade in and fade out effects. Draggable handles appear on hover at the start and end of items to adjust fade duration, with visual curves showing the fade effect.

Drag and dropping

Items can be dragged and repositioned on the timeline. Multi-select is supported, allowing you to drag multiple items at once. A shadow overlay shows where the moving item is being placed when dragging.

Automatic duration

When assets are imported, items are automatically assigned appropriate durations based on the asset's length. Video and audio items use the media duration, while images and text use default durations.

Multi-select

Multiple items can be selected using Cmd/Ctrl+click (alternatively Shift+click) to add items to the selection, or range selection (so called Marquee selection) is possible by choosing a contiguous block of items. Selected items can be moved, deleted, or edited together.

Splitting items

Items can be split at the current playhead position using the scissors tool. The split creates two separate items, properly handling fade effects and media start times for the new segments.

Hide track

Feature flag: FEATURE_HIDE_TRACKS

Allows hiding the tracks on the timeline.

Mute track

Feature flag: FEATURE_MUTE_TRACKS

Allows muting the track.

Rolling edits

Feature flag: FEATURE_ROLLING_EDITS

Rolling edits are a video editing feature that allows you to adjust the cut point between two adjacent timeline items without changing their total combined duration or position on the timeline.

Inspector

On the right side of the screen, an inspector is displayed which allows for editing the properties of the selected item.
The following features are available

Composition inspector

If no item is selected, controls for the whole composition are displayed: Setting the dimensions and triggering a render.

Layer alignment

Feature flag: FEATURE_ALIGNMENT_CONTROL

Buttons for aligning the item to the left, vertical center, right, top, horizontal center, bottom.

Position controls

Feature flag: FEATURE_POSITION_CONTROL

Allows setting the precise X and Y position of the item.

Dimensions controls

Feature flag: FEATURE_DIMENSIONS_CONTROL

Allows setting the width and height of the item.

Border radius control

Feature flag: FEATURE_BORDER_RADIUS_CONTROL

Allows setting the border radius of the item.

Opacity control

Feature flag: FEATURE_OPACITY_CONTROL

Allows setting the opacity of the item.

Text alignment

Feature flag: FEATURE_TEXT_ALIGNMENT_CONTROL

Allows setting the text alignment of the item (left, center, right).

Font family

Feature flag: FEATURE_FONT_FAMILY_CONTROL

Allows setting the font family of the item.

Font family preview

Feature flag: FEATURE_FONT_FAMILY_DROPDOWN_RENDER_IN_FONT

Each item in the font family dropdown is rendered in the font itself.

Hover to preview font family

Feature flag: FEATURE_FONT_FAMILY_DROPDOWN_HOVER_PREVIEW

When hovering over an item in the font family dropdown, the text item in the canvas updates with a preview of what the item would look like if it the hovered item was selected.

Font style

Feature flag: FEATURE_FONT_STYLE_CONTROL

Allows setting the font style variant and weight (normal, italic, bold, etc.) for text and caption items. Includes live preview when hovering over options.

Font size

Feature flag: FEATURE_TEXT_FONT_SIZE_CONTROL

Allows setting the font size of the item.

Text value

Feature flag: FEATURE_TEXT_VALUE_CONTROL

Allows editing the text content via a text area in the inspector. Text area automatically resizes based on content and alignment settings.

Color

Feature flag: FEATURE_COLOR_CONTROL

Provides a color picker for text, solid, and caption items. Supports full RGB color selection for the item's primary color property.

Rotation

Feature flags: FEATURE_ROTATION_CONTROL and FEATURE_ROTATE_90_DEGREES_BUTTON

Line height

Feature flag: FEATURE_TEXT_LINE_HEIGHT_CONTROL

Allows setting the line height for text and caption items. Accepts values from 0.5 to 5.0 with automatic text relayout when changed.

Letter spacing

Feature flag: FEATURE_TEXT_LETTER_SPACING_CONTROL

Allows setting the letter spacing for text and caption items. Supports values from -10px to 50px with automatic text relayout when changed.

Text direction

Feature flag: FEATURE_TEXT_DIRECTION_CONTROL

Provides left-to-right (LTR) and right-to-left (RTL; like Arabic) text direction controls. Text direction is automatically detected when creating new text items, but can be manually overridden.

Playback speed

Feature flag: FEATURE_PLAYBACKRATE_CONTROL

Allows setting the playback rate for video, audio, and GIF items. Supports rates from 0.25x to 5x with automatic duration adjustment based on the new playback speed.

Volume

Feature flag: FEATURE_VOLUME_CONTROL

Provides a volume slider for audio and video items with decibel-based adjustment. Shows the current dB difference to the original audio.

Fade in and out

Feature flags: FEATURE_AUDIO_FADE_CONTROL and FEATURE_VIDEO_FADE_CONTROL

Provides precise controls for fade in and fade out durations for audio and video items. Allows setting fade times in seconds with visual preview of the fade effect.

Playback

Play / Pause button

A central play/pause button that starts or stops the video playback. It can be controlled using the Space bar on the keyboard and changes its icon to reflect whether the video is currently playing or paused.

Current time indicator

Displays the current playhead position in timecode format (MM:SS.FF, where FF is the frame number). Updates in real-time as the video plays or when scrubbing through the timeline.

Fullscreen button

Feature flag: FEATURE_FULLSCREEN_CONTROL

Allows entering fullscreen mode for the video player (exiting with Esc).

Mute button

Feature flag: FEATURE_MUTE_BUTTON

Global mute/unmute switcher for the entire timeline audio. Visual indicator shows current mute state.

Loop

Feature flag: FEATURE_LOOP_BUTTON

Switcher button to enable or disable looping of the entire timeline. When enabled, the video will automatically restart from the beginning after reaching the end. Visual indicator shows current loop state.

Canvas

Click to select

Clicking on items in the canvas selects them. Selected items show a blue outline and can be edited via the inspector. Clicking on empty space deselects all items.

Move and resize

Selected items can be dragged to move their position on the canvas. Resize handles appear on selected items allowing for width and height adjustment by dragging the corners or edges.

Shift axis lock

Feature flag: FEATURE_SHIFT_AXIS_LOCK

While dragging holding Shift constrains item movement to horizontal or vertical axis only, helping with precise positioning and alignment.

Shift aspect ratio lock

Feature flag: FEATURE_SHIFT_KEY_TO_OVERRIDE_ASPECT_RATIO_LOCK

Holding Shift while resizing video items overrides the original aspect ratio, enabling distortion when scaling video items up or down. This feature is disabled by default.

Multi-select

Multiple items can be selected by holding Cmd/Ctrl while clicking additional items. All selected items can be moved together.

Marquee selection

Click and drag on empty canvas areas to create a selection rectangle that selects all items within its bounds. Useful for quickly selecting multiple items in a region.

Dropping assets

Assets can be dropped directly onto the canvas from the file system. The item is automatically positioned at the playhead location and added to an appropriate track on the timeline.

Zoom (level)

The canvas supports zooming in and out to view items at different scales. The zoom level on the canvas is displayed as a percentage and can be reset to fit the available space.

Pinch to zoom / Ctrl + mouse wheel to zoom

On desktop, holding Ctrl/Cmd while scrolling the mouse wheel zooms in and out of the canvas with the mouse position as the zoom center. On touch devices, pinch gestures zoom into the canvas.

Plus and minus buttons

Physical zoom buttons provide an alternative way to zoom in (+) and zoom out (-) of the canvas. Also includes a reset button to return to the default fit-to-canvas zoom level.

Copy and paste

Feature flags: FEATURE_COPY_PASTE_LAYERS and FEATURE_PASTE_ASSETS

Items can be copied with Cmd/Ctrl+C and pasted with Cmd/Ctrl+V. Pasted items are automatically positioned and can include text, images, and other assets from the clipboard.

Bring to front / Send to back

Items can be reordered by moving them between tracks on the timeline. Items on higher tracks appear in front of items on lower tracks in the final composition.

Behaviors

Cut, copy, paste, duplicate

Feature flags: FEATURE_CUT_LAYERS, FEATURE_COPY_PASTE_LAYERS, and FEATURE_DUPLICATE_LAYERS

Standard cut (Cmd/Ctrl+X), copy (Cmd/Ctrl+C), and paste (Cmd/Ctrl+V) operations work with timeline items. Duplicate (Cmd/Ctrl+D) creates copies of selected items with automatic positioning.

Save and load

Feature flag: FEATURE_SAVE_BUTTON

Project data is automatically saved to browser's local storage. Manual save can be triggered with Cmd/Ctrl+S. Projects automatically load when returning to the editor.

Asset uploads

Assets are uploaded and processed when dropped into the editor. Upload progress is shown with indicators, and assets are stored for use across browser sessions. Multiple file formats are supported.

Undo and redo

Feature flags: FEATURE_UNDO_BUTTON and FEATURE_REDO_BUTTON

Full undo/redo system tracks all changes to the timeline and canvas. Use Cmd/Ctrl+Z to undo and Cmd/Ctrl+Y or Cmd/Ctrl+Shift+Z to redo actions.

Asset caching

Feature flag: FEATURE_CACHE_ASSETS_LOCALLY

Assets are cached locally in the browser using IndexedDB for faster loading and offline editing capabilities. Cached assets persist across browser sessions.

Rendering

Remotion integration

The editor integrates directly with Remotion's rendering engine. The composition created in the editor can be rendered to MP4 or other video formats using Remotion's rendering capabilities.

Render button

Triggers the rendering process to export the current composition as a video file. Shows render progress and allows download of the final rendered video.

Keyboard shortcuts

⌘/Ctrl
Z
UndoFEATURE_UNDO_SHORTCUT
⌘/Ctrl
Y
⌘/Ctrl
Shift
Z
RedoFEATURE_REDO_SHORTCUT
1 frame forward
1 frame backwards
+
Zoom in
-
Zoom out
0
Reset zoom
SpacePlay / Pause
⌘/Ctrl
S
SaveFEATURE_SAVE_BUTTON
Hold Shift or ⌘/Ctrl While selecting items (multi-select)
Hold Shift while dragging itemConstrain movement to horizontal/vertical axis onlyFEATURE_SHIFT_AXIS_LOCK
⌘/Ctrl
A
Select all items
⌘/Ctrl
X
Cut selected item(s)FEATURE_CUT_LAYERS
⌘/Ctrl
C
Copy selected item(s)FEATURE_COPY_PASTE_LAYERS
⌘/Ctrl
V
Paste item(s)FEATURE_COPY_PASTE_LAYERS
⌘/Ctrl
D
Duplicate selected item(s)FEATURE_DUPLICATE_LAYERS
DeleteDelete selected item(s)FEATURE_BACKSPACE_TO_DELETE

Captioning

Let your users create TikTok-style captions for videos and audio assets using AI-powered transcription. After transcription, the editor creates a Captions item and adds it to the timeline. Users can edit the captions in the inspector, customize the style and timing.

Transcription providers

For more details, see Captioning in the Editor Starter.

See also