Skip to content

enoo-git/pyngo

Repository files navigation

Pyngo

A real-time bingo game powered by Pyth Network. Live crypto prices determine the outcome — your predictions make the difference.

How It Works

Pyngo generates a 4x5 grid of market conditions based on live BTC, ETH, and SOL prices. You have 90 seconds. Every second, prices update via Pyth Price Feeds — when a condition becomes true, the cell validates automatically.

Gameplay

  • Predict — Click up to 5 cells you think will validate. Correct = x2 points, wrong = -5 pts. No take-backs!
  • Reroll — Right-click (or use Reroll mode on mobile) to swap a condition for a new one. 3 uses. Predicted cells are locked.
  • Score — Earn points for validated cells, completed rows/columns, and a BINGO bonus for clearing all 20.

Scoring

Action Points
Cell validated +10
Predicted correctly +20 (x2)
Wrong prediction -5
Complete row/col +50 bonus
BINGO (all 20) +200 bonus

Pyth Integration

Price Feeds

Live prices are fetched every second from the Pyth Hermes API using three feeds:

  • BTC/USD (e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43)
  • ETH/USD (ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace)
  • SOL/USD (ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d)

Entropy

The game grid is randomly generated using Pyth Entropy via the Fortuna API. A revelation from the Entropy provider is combined (XOR) with a local random value to produce a deterministic seed for the grid shuffle. The seed is displayed in-game for transparency.

Tech Stack

  • Framework: Next.js 16 (App Router), TypeScript
  • Styling: Tailwind CSS, Framer Motion
  • Database: SQLite (better-sqlite3) for the leaderboard
  • APIs: Pyth Hermes (prices), Pyth Fortuna (entropy)

Getting Started

npm install
npm run dev

Open http://localhost:3000.

License

Apache 2.0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors