Inspiration
As the year comes to a close, Spotify has an annual tradition of giving highlights of what you listened to and other similar statistics. My instagram feed is filled with Spotify Wrapped results so I figured this might be a good idea for this hackathon: show users the main stats of their 2025 Polymarket activity.
What it does
Polymarket Wrapped analyzes a user’s full Polymarket trading history and turns it into a personalized year-in-review. After connecting a wallet, users receive a set of beautifully generated cards showing:
- Their total volume, win rate, and PnL
- Best trade, worst trade, and “most cursed” market
- Favorite market categories (politics, sports, crypto, etc.)
- Behavioral insights like typical trade timing and holding patterns
- A custom “trading persona” based on how they participated in the markets
Users can also mint a Wrapped Badge NFT on Base, which stores a unique summary URI onchain. Minting is gasless thanks to ERC-4337 smart accounts and Paymasters, making the experience seamless for anyone.
How I built it
I built a backend pipeline that ingests Polymarket trade data, reconstructs user positions, computes analytics, and generates metadata for each Wrapped card. The frontend uses this processed data to render dynamic visuals that can be exported and shared. To qualify for the Base Track, we deployed a minimal ERC-721 contract on Base with a mintWrappedBadge(address, string) method
Challenges we ran into
- deploying to various testnets; had to use mainnet
- limited time due to finals
Accomplishments that we're proud of
- Delivering a polished, cohesive year-in-review experience for Polymarket for the first time
- Creating a minimal onchain component that feels meaningful
What we learned
- Best practices for indexing Polymarket trading flows
- How to apply ERC-4337, Paymasters, and smart accounts to real consumer UX
What's next for Polymarket Wrapped
- use a db instead of keeping everything in memory
- sponsor user gas fees
Built With
- foundry
- framer
- hardhat
- nextjs
- polymarket-data-api
- rainbowkit
- solidity
- typescript
- viem
- wagmi
Log in or sign up for Devpost to join the conversation.