project screenshot 1
project screenshot 2
project screenshot 3

ELO Flow

On-chain Poker Game using VRF on Flow with gasless transactions

ELO Flow

Created At

ETHGlobal Bangkok

Winner of

Avail - Pool Prize: Build anything with Avail

Prize Pool

Project Description

🃏 ELO Flow is fully decentralized poker game built on the Flow blockchain, using verifiable random shuffling for each game, gasless transactions, and cross-chain data availability using Avail DA.

By posting game data onto Avail DA, players can access the game data on any compatible chain and enjoy skill-based matchmaking for any poker variant.

The goal was to build the ELO logic in Solidity and in Stylus for maximum compatibility

How it's Made

Most of the implementation was for Flow, for the contracts, frontend, and backend. Avail did not integrate out of the box so I did not include the logic for uploading the game state.

Smart Contracts (Cadence)

  • Deck management and shuffling
  • Game state management
  • Player actions and betting logic
  • Pot distribution and winning hand calculation

Backend (SST + Hono + AWS Lambda)

  • Gasless transaction processing (blind signing)
  • Using fcl-kms-authorizer (https://github.com/doublejumptokyo/fcl-kms-authorizer) to sign the transaction on AWS Lambda

Frontend

  • Vite + React + Typescript
  • Telegram bot (@elo_flow_bot (https://t.me/elo_flow_bot)) for mobile access
  • Real-time game updates
  • Wallet using Flow-FCL (https://github.com/onflow/fcl-js)
background image mobile

Join the mailing list

Get the latest news and updates