# zero-native doctor

The `zero-native doctor` command checks your development environment for issues.

## What it checks

<table>
  <thead>
    <tr>
      <th>Check</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Host platform</td>
      <td>Operating system and architecture</td>
    </tr>
    <tr>
      <td>WebView</td>
      <td>WKWebView (macOS) or WebKitGTK (Linux) availability</td>
    </tr>
    <tr>
      <td>Manifest</td>
      <td><code>app.zon</code> validation (only when <code>--manifest</code> is passed)</td>
    </tr>
    <tr>
      <td>Log directory</td>
      <td>Writability of the log output path</td>
    </tr>
    <tr>
      <td>CEF</td>
      <td>CEF distribution presence when Chromium is selected by <code>app.zon</code> or <code>--web-engine chromium</code></td>
    </tr>
    <tr>
      <td>Signing tools</td>
      <td>Code signing tool availability</td>
    </tr>
  </tbody>
</table>

## Usage

```bash
# Informational (always exits 0)
zero-native doctor

# Strict mode (exits non-zero on any warning)
zero-native doctor --manifest app.zon --strict

# Check CEF setup
zero-native doctor --manifest app.zon
```

## Flags

<table>
  <thead>
    <tr>
      <th>Flag</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><code>--strict</code></td>
      <td>Exit non-zero on any warning</td>
    </tr>
    <tr>
      <td><code>--manifest</code></td>
      <td>Path to <code>app.zon</code></td>
    </tr>
    <tr>
      <td><code>--web-engine</code></td>
      <td>Temporarily override the engine from <code>app.zon</code> with <code>system</code> or <code>chromium</code></td>
    </tr>
    <tr>
      <td><code>--cef-dir</code></td>
      <td>Temporarily override the CEF distribution path</td>
    </tr>
    <tr>
      <td><code>--cef-auto-install</code></td>
      <td>Temporarily allow automatic prepared CEF installation for Chromium checks</td>
    </tr>
  </tbody>
</table>
