> ## Documentation Index
> Fetch the complete documentation index at: https://splice.gramcartlabs.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Install, create a project, make three edits, render a file, and look at it.

This page takes you from nothing to a rendered file. It assumes a video file
exists and that `ffmpeg` is installed.

**1. Install**

```bash theme={null}
npm install -g splice-cli
splice doctor
```

`doctor` prints one JSON object. If `ok` is false, fix that first — every
render would otherwise fail on a filter, not on your edit.

**2. Create a project**

```bash theme={null}
splice init --size 1080x1920 --fps 30
splice add intro.mp4
```

`init` writes `splice.json`. `add` appends the clip and prints its id.

**3. Make an edit**

```bash theme={null}
splice trim clip_1 --to 4s
splice text "Ship faster" --from 0.5 --to 4 --pos top-left
```

Every mutation prints `{"ok":true,...}` and, when something will not do what
you asked, a `warnings[]` array. Read it.

**4. Iterate cheaply**

```bash theme={null}
splice render --preview -o preview.mp4
splice frames --at 1,2.5 -o stills
```

`--preview` renders a small proxy with its own cache. `frames` writes PNGs so
you can look at the result without watching the whole file.

**5. Render the real thing**

```bash theme={null}
splice render -o out.mp4
```

The response reports `steps.total`, `steps.ran` and `steps.reused`, plus the
duration, size and fps that were actually produced.

> [!TIP]
>
> Read the JSON, never the logs. stdout is one object; stderr carries progress and
> a short failure tail.

## Where to go next

> [card] [Editing](https://splice.gramcartlabs.tech/guides/editing.md)
>
> Trim, speed, ramps, reordering, and tightening a recording.

> [card] [Captions](https://splice.gramcartlabs.tech/guides/captions.md)
>
> Transcribe, review, and burn in — as separate steps.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.