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

# Quickstart

> Start sending events in minutes

## Sending an event

<Steps>
  <Step title="Creating an account">
    First things first, [get signed in](https://app.sailhouse.dev) and create your team.
  </Step>

  <Step title="Creating an app">
    In Sailhouse, [apps](/concepts/apps.mdx) are the logical separators for your topics. This could be environments, projects or both!

    <Frame>
      <img src="https://mintcdn.com/sailhouse/YV_RX8UqlSyMKR-i/images/create-app.png?fit=max&auto=format&n=YV_RX8UqlSyMKR-i&q=85&s=a9c5097f2e5c023698c0fc200d242632" width="963" height="294" data-path="images/create-app.png" />
    </Frame>
  </Step>

  <Step title="Create a token">
    To send an event to an application, we need a token to pass into our SDK.

    Go to your [new app](https://app.sailhouse.dev/apps) > **Settings** > **Create**

    <Frame>
      <img src="https://mintcdn.com/sailhouse/YV_RX8UqlSyMKR-i/images/new-token.png?fit=max&auto=format&n=YV_RX8UqlSyMKR-i&q=85&s=253fb5ca7c435c97d2ec986392dae0bc" width="1321" height="526" data-path="images/new-token.png" />
    </Frame>
  </Step>

  <Step title="Start sending events">
    <Tabs>
      <Tab title="Go">
        First, adding the SDK package

        ```bash Adding the package theme={null}
        go get -u github.com/sailhouse/sdk-go/sailhouse
        ```

        Then, a basic example which reads the token from an environment variable `SAILHOUSE_TOKEN`.

        ```go main.go theme={null}
        package main

        import (
            "github.com/sailhouse/go-sdk/sailhouse"
        )

        func main() {
          client := sailhouse.NewSailhouseClient(os.Getenv("SAILHOUSE_TOKEN"))

          client.Publish("awesome-example", map[string]string{
            "message": "Hello World!",
          })
        }
        ```
      </Tab>

      <Tab title="TypeScript / JavaScript">
        First, installing the SDK.

        ```bash Intsalling the package theme={null}
        npm install @sailhouse/client
        ```

        Then a basic example ,taking advantage of top-level await.

        ```ts index.ts theme={null}
        import { SailhouseClient } from "@sailhouse/client";

        const client = new SailhouseClient(process.env.SAILHOUSE_TOKEN);

        await client.publish("signups", {
          email: "hello@sailhouse.dev",
          type: "pro",
        });
        ```
      </Tab>
    </Tabs>
  </Step>
</Steps>

## Next steps

<CardGroup cols={2}>
  <Card title="Install the CLI" icon="square-terminal" href="cli-reference/introduction">
    Do everything you need from your terminal with the Sailhouse CLI
  </Card>

  <Card title="Learn how to handle push events" icon="book-open-cover" href="/guides/receiving-push-events">
    You've sent an event, now see how you can handle them.
  </Card>
</CardGroup>
