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

# Media management

> Upload, organize, and serve media files with Media Flow

Media Flow lets you upload, organize, and serve media files from [BRICKS Controller](/controller). Your applications can display images, videos, and other media served through the BRICKS CDN.

<Info>
  Media Flow requires a workspace with Media Flow enabled. Check your workspace subscription for availability.
</Info>

## Media boxes

Media boxes are containers that organize your files by category or purpose. Each box holds a collection of media files.

### Create a media box

1. In BRICKS Controller, go to **Media**
2. Click **Create Box**
3. Enter a name for the box

### View files in a box

Click on a media box to browse its files. You can filter by:

* **File type** — Images, videos, documents
* **User tags** — Custom tags you assign to files

## Uploading files

<Steps>
  <Step title="Open a media box">
    Navigate to the media box where you want to upload files.
  </Step>

  <Step title="Upload">
    Click **Upload** and select one or more files from your computer.
  </Step>

  <Step title="Configure options">
    Add a description, tags, and configure image processing options.
  </Step>
</Steps>

### Upload options

| Option             | Description                                                        |
| ------------------ | ------------------------------------------------------------------ |
| **Description**    | A text description of the file                                     |
| **User tags**      | Custom tags for organizing and filtering (up to 15 per file)       |
| **Image versions** | Generate resized versions at specific dimensions (e.g., `800x600`) |
| **AI analysis**    | Run AI analysis on the file with optional custom instructions      |

## Image processing

When uploading images, you can generate additional versions at specific dimensions:

* Define the target size (e.g., `800x600`)
* Choose a fill mode (e.g., `FILL`, `FIT`)
* Select an output format

Processed versions are stored alongside the original and served through the CDN.

## Using media in applications

Your applications access media files through the BRICKS CDN. Files are served with optimized caching and delivery.

## CLI access

You can also manage media from the [BRICKS CLI](/cli):

```bash theme={null}
# List media boxes
bricks media boxes

# List files in a box
bricks media files <box-id>

# Upload files with tags and image processing
bricks media upload <box-id> image.png -t "banner" --image-version "800x600:FILL"
```
