# uip codedapp init

> Syntax and options for `uip codedapp init`, which creates a local coded app starter.

`uip codedapp init` scaffolds a local coded-app starter into `<path>`. It's a local, unauthenticated operation — no login or auth-override flags apply. By default, when run inside an existing solution, the new project is auto-registered in the surrounding solution's `.uipx`; pass `--skip-solution-registration` to opt out.

## Synopsis

```
uip codedapp init <path> [options]
```

- `<path>` — target directory for the starter coded app. Required.

## Options

| Flag | Description |
|---|---|
| `--force` | Overwrite starter files in a non-empty directory. |
| `--template <template>` | Starter template: `form`, `dashboard`, or `inline-automation`. Default: `form`. |
| `--type <type>` | Coded app subtype. Omit for a regular coded app, or pass `Action` to scaffold a coded Action app. |
| `--skip-solution-registration` | Do not auto-register this project in the surrounding solution. |

## Examples

```bash
# Create a form starter coded app
uip codedapp init ./expense-app --template form

# Overwrite starter files in a non-empty directory
uip codedapp init ./expense-app --force

# Skip auto-registering the project in a parent solution
uip codedapp init ./expense-app --skip-solution-registration

# Scaffold a coded Action app
uip codedapp init ./approve-invoice --type Action
```

## Data shape (--output json)

```json
{
  "Code": "InitCompleted",
  "Data": {
    "path": "./expense-app",
    "template": "form",
    "SolutionRegistration": {
      "Status": "NotInSolution",
      "Message": "Project created in standalone mode; no parent .uipx solution found."
    }
  }
}
```

`SolutionRegistration.Status` is `NotInSolution` when no parent solution is found, or `OptedOut` when `--skip-solution-registration` was passed — omitted entirely when the project registers successfully into a discovered parent solution.

## Related

- [uip codedapp pack](./uip-codedapp-pack.md) — package the built app once it's ready.
- [uip codedapp push](./uip-codedapp-push.md) — push the initialized project's source to Studio Web.

## See also

- [Coded Apps tool overview](./uip-codedapp.md)
- [Global options](./global-options.md)
- [Exit codes](./exit-codes.md)
