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

# Chat

> Build iOS apps through conversation. Describe features in natural language and Paperline generates Swift and SwiftUI code in real-time with checkpoints.

## Sending Messages

Type your message in the input field and press **Enter** or click **Send**. You can:

* Describe new features to add
* Ask for UI changes
* Request bug fixes
* Ask questions about your code

### Example Prompts

```
Create a weather app with a clean, minimal design
```

```
Add a settings screen with dark mode toggle
```

```
The button isn't responding to taps, can you fix it?
```

## Checkpoints

Paperline automatically creates **checkpoints** as you build. Checkpoints let you:

* **Undo** changes that didn't work out
* **Redo** changes you accidentally undid
* **Compare** different versions of your app

### Using Checkpoints

1. Look for the checkpoint indicator in the chat
2. Click **Restore** to go back to that state
3. All file changes will be reverted

## Image Attachments

You can attach images to your messages to:

* Share UI mockups or designs
* Show screenshots of bugs
* Reference other apps for inspiration

### Attaching Images

1. Click the **image icon** in the chat input
2. Select images from your Mac (up to 5 at a time)
3. Or paste an image directly from your clipboard
4. Add a description of what you want

## Message Editing

Made a typo or want to rephrase? You can edit your messages:

1. Hover over your message
2. Click the **Edit** button
3. Modify your message
4. Press **Enter** to resend

The AI will respond to your updated message.

## Chat Tabs

Paperline supports multiple chat conversations per project:

* Click **New Chat** in the sidebar to start a fresh conversation
* Switch between tabs to access different conversations
* Each tab maintains its own context and history
* Close tabs with `⌘ W` (keeps at least one tab open)

## Streaming Responses

Paperline streams AI responses in real-time. You'll see:

* Text appearing as it's generated
* Code blocks being written
* File changes being applied

You can **Stop** generation at any time by clicking the stop button.

## Context Awareness

Paperline understands your entire project:

* All Swift and SwiftUI files
* Project structure and dependencies
* Previous conversation history

This means you can reference things naturally:

```
Make the button we added earlier blue instead of green
```

## Keyboard Shortcuts

| Shortcut | Action           |
| -------- | ---------------- |
| `⌘ N`    | New Project      |
| `⌘ O`    | Open Project     |
| `⌘ W`    | Close Tab        |
| `⌘ ⇧ W`  | Close Project    |
| `⌘ S`    | Toggle Sidebar   |
| `⌘ ⇧ R`  | Reveal in Finder |
| `Tab`    | Focus Chat Input |

## Tips for Better Results

<AccordionGroup>
  <Accordion title="Be specific">
    Instead of "make it look better", try "add rounded corners and a subtle shadow to the card".
  </Accordion>

  <Accordion title="One thing at a time">Break complex features into smaller requests for better results.</Accordion>

  <Accordion title="Provide context">
    If referencing external designs, attach an image or describe it in detail.
  </Accordion>

  <Accordion title="Use checkpoints">
    Don't be afraid to experiment. You can always go back.
  </Accordion>
</AccordionGroup>
