---
title: 'flexkit deploy'
description: 'Reference and usage guidance for flexkit deploy.'
---

# `flexkit deploy`

Deploys the schema for every project defined in your local Flexkit config and streams progress until completion.

## Synopsis

```bash
flexkit deploy [options]
```

## Behavior

- Reads projects from your local `flexkit.config.ts` (or `--local-config` path).
- Starts one deploy job per configured project.
- Prints state transitions such as `queued`, `validating`, `building`, `uploading`, `activating`, and final status.
- Reports "no changes" with a returned schema hash when nothing changed.
- Handles Ctrl+C gracefully and stops the deploy run.
- Returns non-zero exit code if any project deploy fails.

## Options

- `--allow-breaking-changes`: Acknowledge and deploy intentional entity or attribute removals. This option does not allow unsafe data type changes or invalid schemas.
- `--force`: Deploy even when the schema has not changed.
- See also the [global options](/docs/cli/global-options).

## Examples

```bash
# Deploy using config in current directory
flexkit deploy

# Force deployment when the schema has not changed
flexkit deploy --force

# Deploy intentional entity or attribute removals
flexkit deploy --allow-breaking-changes

# Deploy using an explicit config file
flexkit --local-config ./flexkit.config.ts deploy

# Deploy from another directory
flexkit --cwd ./apps/my-app deploy
```

See [Schema Deploy Errors](/docs/errors/schema) for instructions when a schema compatibility check stops deployment.


---

[View full sitemap](/docs/sitemap.md)
