#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
- Create a free GitHub account at github.com/signup. Use your Gamesight email.
- Send your GitHub username to Anthony Kinson or Robert Syvarth and ask
for access to
Gamesight/gamesight-arcade-www. Accept the email invitation. - Install GitHub Desktop, sign in, then File → Clone repository and pick the repo. Note the folder it saves to.
- Install Node 24+ from nodejs.org. Take the LTS installer and click through it.
- 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. - 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 code → adding a game is the full contract.
- AI writes the code → build 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