Prediction markets made addictive. Bet on crypto prices, 60-second rounds, instant wallet onboarding
Bobasoda is a lightning-fast, mobile-first prediction market game that transforms crypto price speculation into an addictive 60-second experience. Unlike traditional prediction markets that can take hours or days to settle, Bobasoda delivers instant gratification with one-minute rounds where users bet on whether ETH, BTC, or BNB prices will go up or down.
The core gameplay is dead simple: swipe right if you think the price is going bullish, swipe left for bearish. Within 60 seconds, you know if you won. The first 30 seconds are open for betting, then the round "locks" capturing the current price from our oracle. The final 30 seconds build anticipation as you watch the live price chart move in real-time, comparing it against your locked price. When the timer hits zero, winners are determined and rewards distributed automatically.
We built this specifically for the mobile experience - vertical scrolling between markets feels like Instagram Stories, swipe gestures for betting are natural and intuitive, and the full-screen price charts with real-time updates create an immersive experience. No complex trading interfaces, no confusing order books, just pure prediction gaming.
Three markets run simultaneously (ETH/USD, BTC/USD, BNB/USD), each with independent rounds, so you can bet on multiple assets at once. Every bet is tracked in your history with full transaction transparency - epoch number, direction, amount, status, and on-chain proof. The entire system runs on Base Sepolia with Privy's embedded wallets, meaning users can start playing in under 5 seconds with just an email - no seed phrases, no MetaMask, no friction.
We're targeting the intersection of DeFi and consumer apps - making prediction markets accessible to mainstream users while showcasing the power of decentralized oracles, embedded wallets, and L2 scalability.
Pyth Network Integration: We implemented Pyth's pull oracle using their Hermes API client (@pythnetwork/hermes-client) to fetch ETH, BTC, and BNB prices every 10 seconds. The key innovation is our dual-oracle architecture: Pyth provides smooth UI updates while Chainlink handles on-chain settlement. Each token uses a unique price feed ID (ETH: 0xff614..., BTC: 0xe62df..., BNB: 0x2f958...) configured in our pyth-config.ts. We built a generic usePythPrice(token) hook that handles exponential formatting and polling with proper cleanup.
CDP Embedded Wallets: Integrated @coinbase/cdp-react v0.0.67 for one-click wallet creation. Challenge: CDP required React <19.2.0, so we locked to 19.1.1. Built custom hooks (useCDPTransaction.ts) wrapping viem for type-safe contract interactions. Users authenticate via email - no seed phrases, no MetaMask - and can start betting in under 5 seconds.
Smart Contract Interaction: Created custom hooks for round management: useCurrentRound() polls epoch numbers, useRoundConfig() fetches betting parameters. The prediction market uses Chainlink price feeds (0x4aDC...cb1) for trustless lock price capture at t=30. We encode ABI calls using viem for placeBet() and claimRewards() functions.
eal-Time Charts: Price charts maintain 60 data points with useRef to prevent stale closures. Two-stage initialization: poll for price, then start 5-second update intervals. Lock price reference line appears at t=30 using coordinated state between timer and chart components. Y-axis auto-scales to price range with smooth animations.
Mobile Swipe Gestures: Custom touch event handlers detect >100px swipes in <300ms to trigger bet direction. Used touch-action: pan-y CSS to enable vertical market scrolling while capturing horizontal swipes. Added haptic feedback via Vibration API.
Multi-Market Navigation: Vertical scroll snap using CSS scroll-snap-type: y mandatory - swipe between markets like Instagram Stories. Each market (ETH/BTC/BNB) runs independent rounds with isolated state. Safe area insets handle iPhone notches and Android bars.
Privy reduced onboarding from 2 minutes to 5 seconds with email-based embedded wallet creation. Base Sepolia's 2-3s finality enables rapid betting rounds that would be too expensive on mainnet.

