Project Name: Sleeve
Team: yummyulack
Submitted: April 1, 2026
Answer Capsule
Sleeve is a gamified crypto portfolio app that transforms your on-chain holdings into a living underwater world. Users connect their wallet, watch their assets render as glowing weighted orbs in a dark aquarium scene, and earn Pearls through a daily quest system powered by Pyth Entropy for verifiable randomness. Real-time price feeds via Pyth Lazer Pro make the aquarium react live β orbs grow and shrink as markets move β deployed on Base mainnet.
What It Does
Most portfolio trackers are boring dashboards. Sleeve turns your wallet into a game world. Connect your wallet and your holdings instantly become floating orbs in a deep ocean aquarium β larger orbs for larger positions, glowing green when prices rise, dimming when they fall. Ambient fish, jellyfish, and bubbles populate the scene around your assets, making your portfolio feel alive.
On top of the visual layer sits a quest system. Every day, players can complete quests to earn Pearls β Sleeveβs reward currency. The Bonus Quest triggers Pyth Entropy on-chain, running a verifiable randomness roll that lands one of four tiers: no bonus, small, rare, or jackpot. The jackpot experience is a full stadium ovation β slot reels locking in one by one, confetti, and a fanfare sound sequence β all backed by a real on-chain entropy transaction on Base mainnet. A leaderboard tracks the top Pearl earners, adding a competitive layer on top of the daily loop.
The core loop is: connect wallet β watch your aquarium β complete quests β roll for bonus β climb the leaderboard.
Pyth Features Used
-
Pyth Lazer Pro (real-time price feeds)
-
Pyth Entropy (on-chain verifiable randomness)
-
Both
Price Feeds: Sleeve uses Pyth Lazer Pro via a server-side API route (/api/prices) that polls https://pyth-lazer.dourolabs.app every 10 seconds. The price map is merged with wallet balances from wagmi to calculate each orbβs size and USD value in real time. When a price moves up, the corresponding orb inflates and glows green with fish swimming toward it. When it drops, the orb deflates and dims. The PYTH_API_KEY is kept strictly server-side β never exposed to the client.
Entropy: All bonus reward randomness runs through Pyth Entropy on Base mainnet (contract address stored in NEXT_PUBLIC_ENTROPY_CONTRACT_ADDRESS). When a user completes the Bonus Quest, they sign an Entropy transaction from their wallet. The /api/entropy route resolves the result and maps it to a bonus tier: no bonus (0β60), small (61β90), rare (91β99), jackpot (100). Math.random() is never used in any reward logic β all outcomes are verifiable on-chain.
Links
-
Live Demo: https://sleeve-gamma.vercel.app
-
Source Code: https://github.com/yummyulack/sleeve
Screenshots/Media
Tech Stack
| Layer | Technology |
|---|---|
| Frontend Framework | Next.js 16 App Router, React 19, TypeScript |
| Styling | Tailwind CSS 4 |
| Wallet | RainbowKit 2, wagmi 2, viem |
| Database | Supabase (PostgreSQL) β Pearls, quest cooldowns, rewards log |
| Pyth Integration | Pyth Lazer Pro (price feeds), Pyth Entropy (randomness) |
| Blockchain | Base mainnet (chain ID 8453) |
| Deployment | Vercel |
How It Works
-
Connect your wallet β RainbowKit handles connection on Base mainnet. wagmi reads your token balances instantly.
-
Your aquarium renders β Balances are merged with live Pyth Lazer prices. Each asset becomes a weighted orb, sized by portfolio value, floating in the scene.
-
Prices update live β Every 10 seconds,
/api/pricesfetches fresh Pyth Lazer data. Orbs grow, shrink, and glow in real time. -
Complete the Daily Quest β A flat Pearl reward, no conditions. Just show up and claim. A 24-hour countdown starts independently after claiming.
-
Roll the Bonus Quest β Sign an Entropy transaction. The slot machine spins for 30β40 seconds while the on-chain randomness resolves on Base. Status messages keep you informed: submitted β confirming β entropy resolving β result incoming. Reels lock in one by one. Your tier is revealed with sound and animation matched to the outcome.
-
Climb the leaderboard β Pearl balances update in Supabase. The top 3 are always visible as a corner overlay on the aquarium.
Eligibility Confirmation
-
I am 18 years of age or older
-
I am not located in an OFAC-sanctioned territory
-
This is original work created during the hackathon period
-
I agree to the Terms & Conditions
Licensing
This project is licensed under Apache 2.0.

