# Installation

The Board Web SDK ships as the `@board.fun/web-sdk` package. It is ESM-only and includes TypeScript types.

## Requirements

- **Node 18 or newer**
- A bundler or toolchain that supports ES modules (for example Vite, esbuild, or Rollup)
- A project that produces a static build you can package for Board

## Starting fresh? Scaffold a project

The fastest start is a generated project with everything pre-wired: touch rendering, the system pause menu, device-ready asset paths, and the packaging scripts.

```
npm create @board.fun/game my-game
```

Prefer a full working reference instead of a blank canvas? Add `-- --template showcase` to scaffold a sample app that exercises every SDK domain.

## Add the package to an existing project

```
npm install @board.fun/web-sdk
```

Import the `Board` object wherever you need it:

```
import { Board } from "@board.fun/web-sdk";
```

The SDK is ESM-only, so import it as a module. There is no UMD or CommonJS build.

## Run it on Board

A scaffolded project is ready to package and deploy. Continue to [Build & Deploy](https://docs.dev.board.fun/web/getting-started/build-and-deploy) to install and launch it on Board. That is how you see your app actually run, since Board input and services are only available on a real device.
