Back to articles
Building an Airdrop Claim Page: GitHub OAuth + MetaMask + Phantom in Vanilla JS

Building an Airdrop Claim Page: GitHub OAuth + MetaMask + Phantom in Vanilla JS

via Dev.to TutorialNOX Ventures

I just built a complete airdrop claim interface for the RustChain RIP-305 cross-chain airdrop and wanted to share the technical patterns. The goal: a zero-dependency claim page that verifies GitHub contributions, connects to both Base L2 (MetaMask) and Solana (Phantom), runs anti-Sybil checks, and lets eligible users claim wrapped RTC tokens. Here's what I learned. The Stack Vanilla HTML/CSS/JS. No React. No build step. No bundler. Why? Airdrop claim pages need to be: Auditable — users need to inspect what runs in their browser Fast — no 3MB React bundle Deployable anywhere — IPFS, GitHub Pages, raw CDN A single index.html file is the right call. GitHub OAuth Flow The eligibility check needs to verify: How many repos the user has starred (Stargazer tier) How many PRs they've had merged (Contributor/Builder/Core tiers) Account age (>30 days anti-Sybil) In production, this requires a server-side OAuth callback: // Frontend: redirect to OAuth window . location . href = ' /api/auth/github?

Continue reading on Dev.to Tutorial

Opens in a new tab

Read Full Article
2 views

Related Articles