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

# Developer quickstart

> Create, preview, upload, and submit a Niblet app from your own system.

This path creates a small app and sends one exact source-and-preview pair to review. It does not run your source in Niblet Cloud.

<Steps>
  <Step title="Install the Niblet CLI">
    ```sh theme={null}
    curl -fsSL https://raw.githubusercontent.com/commacollectivehq/niblet-pixlet/main/scripts/install.sh | sh
    ```

    The release installer supports macOS and Linux and verifies the archive against the published SHA-256 manifest.
  </Step>

  <Step title="Create a project">
    ```sh theme={null}
    niblet apps init morning-glow --name "Morning Glow" --author "Your name"
    cd morning-glow
    ```

    A project contains `manifest.yaml` and exactly one top-level `.star` file.
  </Step>

  <Step title="Run the local preview">
    ```sh theme={null}
    niblet serve .
    ```

    Open `http://localhost:8080` and keep the CLI running while you edit.
  </Step>

  <Step title="Validate and save the review image">
    ```sh theme={null}
    niblet apps validate .
    niblet apps preview . -o preview.webp
    ```
  </Step>

  <Step title="Authorize the CLI">
    ```sh theme={null}
    niblet auth login
    ```

    Review the requested permissions in your browser. The CLI uses OAuth with PKCE and a temporary callback on `127.0.0.1`.
  </Step>

  <Step title="Upload and submit">
    ```sh theme={null}
    niblet apps push .
    niblet apps submit <REVISION_ID>
    ```

    `push` validates and renders locally again, then uploads an immutable source-and-WebP pair. `submit` sends that exact revision to review.
  </Step>
</Steps>

<Warning>
  Never place API keys, passwords, OAuth tokens, Wi-Fi details, or customer data in source, manifests, review notes, or MCP messages.
</Warning>

## Next steps

<CardGroup cols={2}>
  <Card title="Understand the project format" icon="folder-tree" href="/cli/app-workflow" />

  <Card title="Add configuration" icon="sliders" href="/build/configuration" />

  <Card title="Connect an AI assistant" icon="message-bot" href="/mcp/connect" />

  <Card title="Prepare for review" icon="clipboard-check" href="/publish/checklist" />
</CardGroup>
