# SDK overview

Everything the Wavedash SDK gives your game — accounts, multiplayer, leaderboards, and more.

Source: https://docs.wavedash.com/sdk/overview

Every game calls `Wavedash.init()` once to reveal itself from the loading screen — see [SDK setup](/sdk/setup). Beyond that, the features below are optional; add only what your game needs, in just a few lines each. The SDK is available automatically when your game runs on Wavedash — there's nothing to install.

## SDK features

<CardGroup cols="2">
  <Card title="Multiplayer" href="/multiplayer/lobbies">
    Lobbies, chat, invites, and P2P networking.
  </Card>
  <Card title="Leaderboards" href="/sdk/leaderboards">
    Ranked scoreboards, updated in real time.
  </Card>
  <Card title="Achievements" href="/sdk/achievements">
    Reward players for hitting milestones.
  </Card>
  <Card title="Cloud saves" href="/sdk/cloud-saves">
    Progress syncs across devices automatically.
  </Card>
  <Card title="Player identity" href="/sdk/players">
    Accounts, avatars, friends, and presence.
  </Card>
  <Card title="User-generated content" href="/sdk/ugc">
    Players create, share, and download content.
  </Card>
  <Card title="Paid content" href="/sdk/paid-content">
    Let players start free, then unlock the rest in-game.
  </Card>
</CardGroup>

## How it works

Your game runs in the browser. When a player opens it on Wavedash, the SDK is automatically injected before your code runs — you just call its methods. During local development, `wavedash dev` gives you a sandbox version so everything works the same way.

<GithubLink href="https://github.com/wvdsh/sdk-js" label="View the SDK on GitHub" />

## Supported engines

The SDK works with any engine that runs in a browser. Godot and Unity have dedicated bindings, and everything else uses the JavaScript API directly.

<CardGroup cols="4">
  <Card title="Godot" image="/images/engine-logos/godot.svg" href="/engines/godot" />
  <Card title="Unity" image="/images/engine-logos/unity.svg" imageDark="/images/engine-logos/unity-light.svg" href="/engines/unity" />
  <Card title="Three.js" image="/images/engine-logos/threejs.svg" imageDark="/images/engine-logos/threejs-light.svg" href="/engines/threejs" />
  <Card title="View all →" href="/engines" />
</CardGroup>
