FireballDrop
Farcaster giveaways with Chainlink-randomness.
Created on 24th June 2025
•
FireballDrop
Farcaster giveaways with Chainlink-randomness.
The problem FireballDrop solves
Content creators and community builders often struggle to engage their audience with onchain experiences that are both fun and fair. Traditional airdrops and giveaways can be:
❌ Susceptible to bots or sybil attacks
❌ Difficult to prove fairness of selection
❌ Boring or purely transactional
❌ Hard to integrate into social platforms like Farcaster
This app solves that by enabling creators to easily launch interactive, verifiably fair drops directly within Farcaster.
Users join through a Plinko-style interface, and winners are selected using Chainlink VRF v2.5 (Direct Funding), providing:
✅ Tamper-proof randomness
✅ Fun, game-like user experience
✅ Frictionless social sharing and participation
✅ A new way for creators to reward genuine engagement
Whether you're running a raffle, NFT drop, community lottery, or token giveaway — this app makes it safer, more fun, and transparently fair.
Challenges I ran into
One of the biggest challenges was setting up serverless functions on Vercel to support dynamic meta tags for each drop.
Since this is a Farcaster mini app, each drop needed a unique frame preview — which meant injecting per-drop metadata (og:image, fc:frame, etc.) at request time. However, Vercel's default behavior doesn't make this straightforward:
❌ Static rendering doesn't allow per-request headers/meta
❌ Middleware couldn't reliably inject HTML tags
❌ Some workarounds broke the Farcaster crawler compatibility
It took several days of trial and error, experimenting with edge functions, Vercel rewrites, and SSR routes.
Eventually, I solved it by using a Vercel Serverless Function that:
✅ Dynamically fetches the drop data
✅ Injects the correct meta tags into a custom HTML response
✅ Serves that as the page head for Farcaster crawlers
This unblocked the ability to generate frame-enabled, shareable links per drop, fully integrated with the Farcaster ecosystem.
Technologies used
Cheer Project
Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.
