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

# Quickstart

> Install the Repost CLI, sign in, and forward your first webhook event to localhost.

Get from zero to a webhook arriving on your machine in four steps. For the auth options behind step 3, see [Authentication](/docs/cli/authentication).

<Steps>
  <Step title="Install the binary">
    The CLI is a single `repost` binary. The installer downloads the matching release for your operating system.

    <CodeGroup>
      ```bash macOS/Linux theme={"languages":{"custom":["/languages/repost.json"]}}
      curl -fsSL https://releases.repost.sh/cli/install.sh | sh
      ```

      ```powershell Windows theme={"languages":{"custom":["/languages/repost.json"]}}
      irm https://releases.repost.sh/cli/install.ps1 | iex
      ```
    </CodeGroup>
  </Step>

  <Step title="Sign in">
    Browser login is the recommended path on your own machine.

    ```bash theme={"languages":{"custom":["/languages/repost.json"]}}
    repost auth login
    ```
  </Step>

  <Step title="Forward to localhost">
    Start a session, then choose the bucket and internal forwarder from the prompts. Incoming events appear in the TUI and are delivered to your local endpoint.

    ```bash theme={"languages":{"custom":["/languages/repost.json"]}}
    repost forward
    ```
  </Step>
</Steps>

<Note>
  Running in CI or a script instead of at your desk? See [CI & automation](/docs/cli/ci-automation) for token auth, headless forwarding, and pausing forwarders during a deploy.
</Note>

## Generate a typed SDK

To *send* events from your app, generate a type-safe client from a schema and publish — the [Send quickstart](/docs/send/quickstart) walks the whole loop. Pick your language and build tool:

<CardGroup cols={2}>
  <Card title="Java / Maven" icon="coffee" href="/docs/send/java/quickstart">
    Add the Maven plugin and BOM, generate a typed Java client, and publish with idempotency and Spring Boot or Jakarta CDI injection.
  </Card>

  <Card title="Kotlin / Gradle" icon="feather" href="/docs/send/kotlin/quickstart">
    Apply the Gradle plugin, generate a coroutine-first Kotlin client, and publish with structured concurrency and framework injection.
  </Card>

  <Card title="TypeScript, Go, Python" icon="braces" href="/docs/cli/schema">
    Define, version, and generate a typed sender with the `repost schema` commands.
  </Card>
</CardGroup>

## Next steps

<Columns cols={3} className="gap-y-4">
  <Card title="Local forwarding" icon="send" href="/docs/cli/local-forwarding" cta="Workflow" arrow="true">
    Handle pending events, navigate the TUI, and generate types from a payload.
  </Card>

  <Card title="Authentication" icon="key-round" href="/docs/cli/authentication" cta="Auth" arrow="true">
    Browser login, API tokens, environment auth, and credential storage.
  </Card>

  <Card title="Command reference" icon="list-tree" href="/docs/cli/reference" cta="Commands" arrow="true">
    Every command, flag, shortcut, and environment variable.
  </Card>
</Columns>
