Stairs
Climb the staircase by picking the right path on each step — cash out anytime to lock in your multiplier before you fall.
Import
import { StairsGameSDK } from '@maktubbet/sdk/stairs'
import '@maktubbet/sdk/stairs/styles.css'Usage
'use client'
import { useState } from 'react'
import { StairsGameSDK } from '@maktubbet/sdk/stairs'
import '@maktubbet/sdk/stairs/styles.css'
export default function StairsPage() {
return (
<StairsGameSDK
accessToken="user-jwt-token"
user={{ betCount: 0, isAuthenticated: true }}
updateBalance={(newBalance) => console.log(newBalance)}
onAuthRequired={() => console.log('Auth required')}
currency={{ code: 'USD', prefix: '$', rate: 1 }}
language="en"
logo={<span>MY LOGO</span>}
onToast={(t) => console.log('Toast:', t.title)}
theme={{
backgroundDark: '#0D1117',
backgroundDarkLight: '#161B22',
inputBackground: '#0D1117',
actionButtonColor: '#1C2333',
buttonColor: '#FFFFFF',
}}
/>
)
}Demo Mode
Demo mode is automatically enabled when a user places a bet with a $0 amount. To run the game entirely client-side without a backend session, pass isDemo — see Demo Mode.
Features
- 4 difficulty levels — Easy, Medium, Hard, Expert with different risk/reward
- Progressive multiplier — payout increases with each successful climb
- Cash out anytime — collect winnings at any point during the round
- Animated staircase — responsive canvas with bouncing ball and rock platforms
- Autobet — automated consecutive rounds
Props
See Shared Props — StairsGameSDK accepts the standard StairsGameSDKProps interface.
| Prop | Type | Required | Default |
|---|---|---|---|
accessToken | string | null | ✅ | — |
user | GameUser | ✅ | — |
updateBalance | (balance: number) => void | ✅ | — |
onAuthRequired | () => void | ✅ | — |
currency | GameCurrency | — | { code: 'USD', prefix: '$', rate: 1 } |
language | string | — | 'en' |
logo | ReactNode | — | — |
onToast | (toast: ToastData) => void | — | — |
theme | GameTheme | — | — |
Last updated on