#Getting started

The whole arcade is one repo: the landing page, every game, the SDK, and the API. Get it onto your machine and you have all of it running locally, including sign-in, leaderboards and achievements, with no AWS account and no config.

Everything ends the same way: a pull request that Anthony Kinson or Robert Syvarth reviews before your game goes live. How you get there depends on how comfortable you are with GitHub.

#Pick your path

Start here
I use Git and GitHub Set up with Git: clone, branch, two commands
I've never used GitHub Set up without the command line: account, access, GitHub Desktop

Either way you'll need Node 24+ from nodejs.org (take the LTS installer) and access to Gamesight/gamesight-arcade-www. If you don't have repo access yet, ask Anthony Kinson or Robert Syvarth for it before you start.

#Set up with Git

git clone https://github.com/Gamesight/gamesight-arcade-www.git
cd gamesight-arcade-www
git checkout -b game/my-game

npm install
npm run build      # SDK + every game + landing page + docs → dist/
npm run preview    # http://localhost:8002

That first build compiles every game in the repo and takes a few minutes. After that, npm run build -- --only my-game rebuilds just yours.

#Set up without the command line

  1. Create a free GitHub account at github.com/signup. Use your Gamesight email.
  2. Send your GitHub username to Anthony Kinson or Robert Syvarth and ask for access to Gamesight/gamesight-arcade-www. Accept the email invitation.
  3. Install GitHub Desktop, sign in, then File → Clone repository and pick the repo. Note the folder it saves to.
  4. Install Node 24+ from nodejs.org. Take the LTS installer and click through it.
  5. In GitHub Desktop, use the Current branch dropdown → New branch and call it game/my-game, so your work stays separate from everyone else's.
  6. Open a terminal in the repo folder (GitHub Desktop: Repository → Open in Terminal) and run those three commands once:
npm install
npm run build
npm run preview

Then open http://localhost:8002. Those three commands are the only terminal work there is. Everything after this is editing files and clicking buttons, and an AI coding assistant can run them for you if you'd rather.

Full walkthrough of the submission side: submitting your game.

#Make your first game

npm run new-game -- my-game --template vite     # or --template vanilla

This creates games/my-game/ with a working game, a valid game.json, and the SDK already wired up. Use vanilla if you're not a developer: it's plain HTML and JavaScript with nothing to compile.

From there, pick how you want to build it:

  • You write the codeadding a game is the full contract.
  • AI writes the codebuild a game with AI gives you a brief to hand it and the rules it has to follow.

#What your game gets for free

You never build any of this. It's the same shared infrastructure for every game.

Feature What you call Guide
Sign-in, shared across all games Arcade.auth player accounts
High-score tables Arcade.leaderboard leaderboards
Achievements + Gamesight Score Arcade.achievements achievements
Realtime rooms, presence, invites Arcade.realtime multiplayer
1v1 voice chat Arcade.voice voice chat
Your own database a backend module saving game data

One script tag turns it on, and there's no npm package to install:

<script src="/sdk/v1/arcade.js"></script>
Arcade.init();                              // slug detected from the URL
await Arcade.leaderboard.submit(1234);
await Arcade.achievements.unlock("first-flight");

#How the repo is laid out

Path What it is
games/<slug>/ One folder per game, fully isolated, with its own dependencies and toolchain
packages/sdk/ The Arcade global every game loads
packages/api/ The shared API: accounts, leaderboards, achievements, per-game backends
landing/ Generator for the arcade site and these docs
docs/ This documentation. Edit the markdown and /docs/ follows
infra/ AWS SAM templates

#Get it reviewed

When it plays the way you want, open a pull request and ask Anthony or Robert to review it. Merging deploys to arcade.gamesight.io automatically.

Next: submitting your game · troubleshooting · local development for the day-to-day loop

View docs/getting-started.md on GitHub ↗