gamba
v0.8.7
Published
<a href="https://gamba.so"> <img src="https://github.com/gamba-labs/gamba/assets/127314884/fd1227f8-8b63-4515-94fd-6ea1625e8083" alt="Gamba Banner" /> </a>
Downloads
64
Readme
Gamba
Gamba is a decentralized betting platform on Solana. It handles all liquidity and randomness, allowing developers to focus on building games.
When users play on your app you will automatically collect royaltees.
Installation
If you want to create a Gamba project from scratch you can install our main package:
npm i gamba
Example
The following example is a simple game where the user has a 50/50 chance of doubling their money.
import React from 'react'
import { Gamba, useGamba } from 'gamba/react'
function DoubleOrNothing() {
const gamba = useGamba()
const play = async () => {
// Request user to sign transaction
const request = await gamba.play({
bet: [0, 2], // 0x or 2x
wager: 1e9 * 0.1, // 0.1 SOL
})
// Await the result
const result = await request.result()
// ... Visualize the result however you want
}
return (
<>
<button onClick={play}>
Double or Nothing
</button>
{gamba.user.balance > 0 && (
<button onClick={() => gamba.withdraw()}>
Claim {gamba.user.balance / 1e9} SOL
</button>
)}
</>
)
}
function App() {
return (
<Gamba creator="<PUBLIC KEY>">
<DoubleOrNothing />
</Gamba>
)
}
Packages
gamba
contains all the individual packages listed below. In most cases this is the only library you need to install.
Nested packages:
The packages listed here are already included in the main gamba
package, but can also be installed independently if needed. They are reachable under gamba/<package>
.
gamba-core
contains the essential stuff and works in other environment such as NodeJSgamba-react
contains everything related to React such as context providers and hooks.gamba-react-ui
contains useful components and utilities for building games in your platform.
Documentation
Read our WIP documentation at gamba.so, or ask away in Discord