Experiment
Fanpire
FIFA World Cup 2026 Fan Vote Territory Map
Built With
Quick Overview
A full-stack fan engagement platform for the FIFA World Cup 2026 — one tap to vote for your team, a live 3D choropleth map showing who dominates each district. Built entirely by one designer using AI-assisted development.
400+
Votes Cast
30+
DB Tables
759+
Districts Mapped
<50ms
API Latency
Key Outcomes
Brand Colors
Ink
#15082B
Violet
#7B3FE4
Gold
#F2B33D
Cream
#F7EFE0
Pitch
#0A1628
Headings & UI
Bricolage Grotesque
Taglines & Italic Accents
Fraunces
What started as a fun idea during World Cup fever became a fully functional fan engagement platform — designed, architected, and built entirely with AI assistance. Fanpire proves that a designer with product thinking can ship a complex full-stack app by leveraging AI as a development partner.
Concept
The Idea
The FIFA World Cup 2026 is here, and fan energy is everywhere. The idea was born from brainstorming sessions with two close friends — what if fans could claim territory for their team? Vote in your district, and the map changes color based on who's winning. The rivalry IS the product.
While I designed and built the entire product solo with AI, those two friends remained crucial throughout — acting as the first peer reviewers, pressure-testing ideas at every stage, and shaping the direction of each new feature.
The core mechanic is simple: one tap to vote, and a live map shows the result. But building the infrastructure to support real-time voting, fraud prevention, gamification, and a 3D interactive map — that's where it gets interesting.
“One tap to vote. A live map shows who's winning. The rivalry IS the product.”
Architecture
Technical Decisions
Every architecture decision was made to balance simplicity with scalability. The goal was: ship fast, handle real traffic, and keep costs near zero.
3
Apps
30+
DB Tables
<50ms
API Latency
759+
Districts
Three Independent Apps
Webapp (Next.js on Vercel), API (Hono on Cloudflare Workers), Admin Panel (Vite on Cloudflare Pages) — each with its own repo and deployment pipeline.
Anonymous-First Auth
Users vote instantly with a client-side UUID — zero friction. Clerk auth layers on top for gamification features, never blocking the core flow.
Trigger-Maintained Aggregates
Database triggers keep locality_stats in sync — clients read pre-computed aggregates, never raw vote tables. Fast reads at any scale.
Edge-First API
Hono framework deployed to Cloudflare Workers — sub-50ms response times globally, with automatic scaling and zero cold starts.
Static GeoJSON Boundaries
759+ Indian districts served as static GeoJSON files — no tile server costs, instant map rendering with zero infrastructure overhead.
Device Hash Fraud Prevention
SHA-256 of IP + browser signals for vote deduplication, with documented CGNAT limitations and mitigation strategies.
Map
3D Interactive Map
The map is the hero of the product. The idea was to take an existing open-source map renderer — MapLibre GL — and build an entirely custom data visualization layer on top of it. Instead of building maps from scratch or paying for expensive tile servers, I used free CARTO dark basemap tiles as the canvas and layered custom GeoJSON boundaries, 3D extrusions, and interactive overlays on top.
This approach — external map + custom data layer — means the app gets a professional, beautiful basemap for free while owning the entire interactive experience above it. The GeoJSON boundary files for 759+ Indian districts are served as static assets, parsed on the client, and rendered as MapLibre fill-extrusion layers with dynamic coloring based on real-time vote data.
“External map renderer as canvas. Custom GeoJSON boundaries as the data layer. Free basemap tiles + owned interactive experience = professional 3D map visualization at zero infrastructure cost.”
3D Choropleth Extrusions
Each district's height and color represents the leading team's vote count — taller means more votes, creating a physical landscape of fan dominance.
Neon Glow Borders
District borders glow in the leading team's color using line-blur and line-opacity properties — making the map feel alive at night.
Animated Flag Markers
Dominated districts show animated flag markers for the winning team, adding visual celebration to the map.
Interactive Popups
Hover/click any district to see team standings, vote counts, and percentage breakdowns in a styled popup.
Cinematic Mode
Auto-rotation with configurable pitch and bearing, plus a 2D/3D toggle — making the map a visual centerpiece, not just a tool.
External Basemap + Custom Layers
CARTO dark basemap with dramatically reduced brightness as the canvas, with all interactive features built as custom MapLibre layers on top — zero tile server costs.
Gamification
Gamification & Engagement
Beyond voting, the platform has a deep engagement layer designed to keep fans coming back.
6
Rank Tiers
60
Avatars
26
Arena Size
7
Streak Days
6-Tier Rank System
Rookie → Supporter → Ultras → Captain → Legend → Emperor. XP earned through votes, check-ins, predictions, referrals, and sharing.
60 Character Avatars
Illustrated animal characters ("Ace Goat", "Baron Bat", "Captain Claws") with generated usernames — identity without requiring real names.
Match Predictions
Predict match results, exact scores, first scorers, and penalty outcomes. Points awarded for accuracy.
Arena Contest System
Groups of up to 26 members with invite codes, individual and group leaderboards, and a separate "Fang Points" currency.
Daily Check-in Streaks
Streak-based XP bonuses encourage daily engagement, with 7-day streak multipliers.
Push Notifications
Web Push for match alerts, goal notifications, prediction reminders — with quiet hours and dedup built in.
Design
Design System
The visual identity was crafted to feel premium, immersive, and unmistakably football. A dark-first design with rich accent colors creates the atmosphere of a stadium at night.
Dark-First Aesthetic
Ink (#15082B) background sets the stage — deep, immersive, and optimized for the glowing map visualization.
shadcn/ui Foundation
Built on shadcn/ui components, customized with Fanpire design tokens for consistency and speed.
Mobile-First PWA
Installable as a PWA with shortcuts, offline support, and dynamic OG images generated at the edge for social sharing.
Scale
Production Infrastructure
The app is built for real traffic with production-grade infrastructure.
Multi-Platform Deployment
Vercel (webapp), Cloudflare Workers (API), Cloudflare Pages (admin) — each optimized for its workload.
CI/CD Pipelines
GitHub Actions for API and admin deployment. Cron jobs every 5 minutes for live match data sync.
Security Hardened
CSP headers, HSTS, rate limiting, CORS restrictions, JWT verification, admin allowlists — professional security posture.
Full Observability
Sentry error tracking, Google Analytics, Hotjar session recording, and custom analytics events table.
Database
30+ Table Schema
The Supabase Postgres database has 30+ tables designed with Drizzle ORM — covering core voting, competitions, matches, gamification (XP, ranks, challenges, predictions), arena contests, push notifications, analytics, and admin infrastructure. Key patterns include idempotent ledgers for XP and Fang Points, trigram search indexes for places, and trigger-maintained aggregate tables.
30+
Tables
Drizzle
ORM
Supabase
Host
Ledger
Pattern
AI Process
Built Entirely with AI
This project demonstrates that a designer with strong product thinking can ship production-grade software by using AI as a development partner. Every line of code was written through AI-assisted development — but the product decisions, architecture choices, UX flows, and design system were all driven by human judgment.
The AI handled implementation details; I handled the "what" and "why." The result is a complex full-stack application with 30+ database tables, real-time maps, gamification systems, push notifications, and multi-platform deployment — shipped by one person.
“The AI handled implementation. I handled the "what" and "why." One designer. Three apps. 30+ tables. Production-grade.”
- 01Product spec and architecture designed by me, implemented with AI
- 02Database schema (30+ tables) designed through iterative AI collaboration
- 033D map interactions prototyped and refined through rapid AI iteration
- 04Security hardening and deployment infrastructure configured with AI guidance
- 05The entire codebase — webapp, API, admin panel — built by one designer + AI
User Feedback
Shaped by Real Users
Fanpire wasn't designed in isolation — it evolved through continuous feedback from real users and peers throughout development. Every major feature addition was a direct response to what people actually asked for after using the product.
“Every feature after the MVP was user-requested. The product roadmap wrote itself through feedback loops — not assumptions.”
400+
Votes Cast
Started as Vote & Go
The first version was dead simple — tap a team, cast a vote, see the map change. No sign-up, no accounts, no friction. Just one action and a result. This was intentional to validate the core mechanic.
GPS-Based Auto Location
The biggest friction point: users had to manually select state → district → team → vote. Too many steps. The fix — detect GPS location for users in India and auto-fill state and district, reducing the vote flow to just picking a team.
"Who's winning overall?"
The first wave of feedback was consistent: users voted, saw their district, but wanted to know which team was dominating nationwide. This led to building team rankings with nationwide and district-level filters.
Live Match Data & Predictions
Users wanted the app to feel alive during matches. Integrated a live football API for real-time scores and player statistics, which powered informed match predictions — scores, first scorers, and outcomes.
Outcomes
What This Proves
Fanpire launched just one day before the FIFA World Cup kicked off — far later than planned. Key features like match predictions, fan zones, and the new user flow were still being built during the Round of 16. The late timing meant the product never got the early-tournament window to build an audience organically. Despite that, it crossed 400+ votes and saw real momentum — users were returning, streaks were being maintained, and the map was coming alive with team colors.
Designers Can Ship
With AI as a development partner, product designers can go from concept to production-grade software.
Product Thinking Matters Most
The hardest part wasn't code — it was deciding what to build, how users would interact, and what to cut.
Momentum Despite Late Launch
Launched a day before FIFA started, with major features shipping mid-tournament. Still saw real traction — proving the concept resonates even without ideal timing.
Spec-Driven Development Works
A thorough product spec and pressure test document guided every decision, keeping the project focused and shippable.
