# Publish to iOS (App Store)

## Prerequisites

- Paid [Apple Developer](https://developer.apple.com) account
- App created in [App Store Connect](https://appstoreconnect.apple.com) with the same **Bundle ID** as your project
- Mac with Xcode and Flutter installed

## One-time setup

```bash
kasy ios configure
```

Opens Apple links, collects the API key (`.p8`), and writes `.kasy/apple.env` (gitignored).

## Ship a new build

```bash
kasy ios release
```

Bumps the build number in `pubspec.yaml`, builds the IPA, and uploads to App Store Connect (no Transporter).

Shortcut: `make release-ios`

### Options

- `kasy ios build` — IPA only, no upload
- `kasy ios release --no-bump` — skip build number bump
- `kasy ios release --version-name 1.0.1` — change marketing version

## No Mac?

Use cloud builds: [codemagic-release.md](./codemagic-release.md) and `kasy codemagic configure` / `kasy codemagic release`.

## Check environment

```bash
kasy doctor
```
