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

# Quickstart

<Card title="Rewards Platform ->" icon="rocket" href="https://rewards.openformat.tech/" horizontal>
  The easiest way to get started is to use the rewards platform.
</Card>

<Steps>
  <Step title="Installation">
    <CodeGroup>
      ```bash npm theme={null}
      npm install @openformat/sdk ethers@^5
      ```

      ```bash yarn theme={null}
      yarn add @openformat/sdk ethers@^5
      ```

      ```bash pnpm theme={null}
      pnpm add @openformat/sdk ethers@^5
      ```

      ```bash bun theme={null}
      bun add @openformat/sdk ethers@^5
      ```
    </CodeGroup>
  </Step>

  <Step title="Setup">
    Create a community (called an app in the SDK) in the [Platform](https://rewards.openformat.tech) or create an app via
    the [sdk](./create-dApp).
  </Step>

  <Step title="Instantiate SDK">
    To instantiate the SDK you will need the following:

    * `appID` can be found on [*your communities* page](https://rewards.openformat.tech/communities) in the platform
    * `signer` is the private key from the account that created the community (app) <br />

    <Warning>
      *Always* store private keys securely as environment variables or in secure storage systems. *Never* hardcode your
      private key in your source code or commit them to version control (e.g., Git).
    </Warning>

    <CodeGroup>
      ```tsx Typescript theme={null}
      import { OpenFormatSDK, Chains } from "@openformat/sdk";

      const APP_ID = "Insert your app ID here";
      const SIGNER = process.env.PRIVATE_KEY;

      const sdk = new OpenFormatSDK({
        appId: APP_ID,
        signer: SIGNER,
        network: Chains.arbitrumSepolia,
      });
      ```
    </CodeGroup>
  </Step>
</Steps>

You are now all setup, ready to start [rewarding tokens](/sdks/typescript/reward-token) and [badges](/sdks/typescript/reward-badge).
