Skip to main content
This guide takes you from sign-up to a settled bet on a page of your own site. You stay in sandbox mode, where the game server holds test balances for your players, so you need no wallet yet. The sandbox is free. You need:
  • A Cloudflare account you can sign in to.
  • A page you control, on your site or on a local development server.
  • A backend route that knows which player is signed in. The examples use Node.js.
1

Create your account and your casino

Sign up at app.kinematic.run/sign-up with your name, your work email and a password, and open the link in the confirmation email: it signs you in. Or select Continue with Google, which needs no confirmation email.The dashboard asks What is your casino called?. Enter the Casino name and the Website your players visit, for example Lucky Star and luckystar.example, and select Continue. Your casino gets an ID made from its name, such as lucky-star. It never changes, and your session tokens carry it.The first-run steps follow: Your team, Size and price, Currencies, Games, Look and Done. In sandbox, Currencies has TEST chosen for you: it is the sandbox’s play money, and each test player starts with 100,000.00 TEST. You can skip Your team with I’ll do it myself and Look with Keep the default look. The last page, Your sandbox is ready, finishes the setup. See Create your casino.
2

Check your allowed origins and session issuer

Open Settings and find Players and sessions. The dashboard filled both fields from the website you entered:
  • Allowed origins lists the pages that can show the games. For luckystar.example it holds https://luckystar.example and https://www.luckystar.example.
  • Session issuer is the value your tokens carry as iss, here https://luckystar.example.
If you test on another page, add its origin to Allowed origins, one per line, for example https://staging.luckystar.example or http://localhost:5173. An origin is the scheme, host and port, with no path and no trailing slash. Sandbox accepts http origins; live accepts only https. Select Save. See Settings.
3

Deploy your game server

Open Game server. Under Connect Cloudflare, select Connect Cloudflare and approve the access on Cloudflare’s own page. You come back to the dashboard, which shows Cloudflare is connected.Under Choose where it runs, choose your Cloudflare account, keep the suggested Worker name (og-rgs-lucky-star), choose workers.dev as the Address and leave Update automatically on. Select Deploy. The deploy takes about a minute; keep the page open until it finishes.The game server’s card then shows its address. Select Copy the address to copy it, for example https://og-rgs-lucky-star.luckystar.workers.dev. To use a hostname of your own instead, see Game server.
4

Store your secrets

Open Integration and go to Secrets. Have your secret manager open, select Reveal secrets, then Reveal in Reveal your secrets?. The page shows a .env block with SESSION_SECRET and WALLET_SECRET. This is the only time you see their values.Put both into your secret manager and your backend’s environment: SESSION_SECRET signs session tokens now, and WALLET_SECRET checks your game server’s wallet calls once you go live. Afterwards the page shows only each secret’s fingerprint and the date it was shown. Only owners and admins can reveal the secrets. If you lose one, write to hello@kinematic.run.
Anyone with SESSION_SECRET can sign in as any of your players. Never put it in code, in a browser, in a log or in a chat with a coding agent.
5

Optional: give the next two steps to a coding agent

At the top of Integration, Instructions for your coding agent holds the next two steps with your casino’s values filled in, and no secrets. Select Copy instructions and paste them into the agent you use in your site’s repository. See Use an AI agent.
6

Sign session tokens on your backend

The element asks your backend for a session token when it connects, and again before each token expires. Add this module to your backend:
session-token.mjs
Then answer POST /api/game-session behind your own login, with the token as plain text. In any framework that hands you a Fetch API Request:
game-session.mjs
The Sign session tokens step on Integration shows the claims with your casino ID and issuer, under Session token claims. Session tokens explains each claim and the device key.
7

Put the games on your page

The Put the games on your page step on Integration shows this code, under Your page, with your game server’s origin, your element’s tag and your first game:
Copy it into your page. If your page sends a Content-Security-Policy header, merge the directives under Content Security Policy, for pages that send one, below the code. See Content Security Policy.
8

Place a sandbox bet

Sign in to your site as a player and open the page. The game shows the player’s sandbox balance: 100,000 of the currency, such as 100,000.00 TEST. Press BET.The result appears on the game’s screen and the balance moves. Open Provably fair in the game’s toolbar to see the bet’s proofs checked in your browser. Once the bet is recorded on Solana devnet, its record appears there too.The bet shows on the dashboard’s Live page. Once your game server reports it, the Put the games on your page and Sign session tokens steps on Integration show Done.
Your page, your session endpoint and your game server work together. Every later step builds on these three.

Next steps

Implement your wallet

Build the debit, credit and balance endpoints a live game server calls.

Make it look like your site

Take a theme from your site, set your logo and rename the element.

Test before you go live

Check your integration in sandbox, then run the wallet check before live.

Go live

Switch your casino to live mode.