GeoQuest is a location-based exploration and rewards platform built as a MiniPay Mini App on the Celo ecosystem.
The product combines:
- real-world exploration,
- merchant-sponsored foot traffic campaigns,
- GPS verification,
- gamified trails,
- NFT collectibles,
- and instant cUSD rewards.
Players physically move through real neighborhoods completing quests at sponsored locations. Merchants fund reward pools to attract verified visitors. The platform coordinates movement, verification, payouts, analytics, and progression.
The experience should feel like:
- a real-world adventure game,
- mixed with local discovery,
- powered invisibly by Web3 infrastructure.
The crypto layer should remain mostly abstracted from users.
GeoQuest transforms cities into playable economic networks.
The platform’s primary objective is:
incentivizing real-world movement and local commerce through gamified exploration.
The deeper business objective is:
building a programmable proof-of-presence advertising and loyalty network.
Players should be able to:
- discover nearby trails,
- physically visit locations,
- complete challenges,
- earn stablecoin rewards,
- collect NFT stamps,
- compete socially,
- and explore their city in a fun way.
Merchants should be able to:
- create sponsored stops or trails,
- fund reward pools,
- attract local visitors,
- track verified foot traffic,
- launch campaigns quickly,
- and measure ROI.
GeoQuest should:
- onboard users into MiniPay,
- drive real-world activity,
- generate merchant revenue,
- maintain low fraud,
- scale city-by-city,
- and create a sticky gameplay loop.
GeoQuest belongs to:
- Location-Based Gaming
- Move-to-Earn
- GameFi
- Local Commerce Infrastructure
- Proof-of-Presence Advertising
- Gamified Loyalty Systems
Age: 18–35
Motivations:
- earning small rewards,
- discovering places,
- social competition,
- collecting badges,
- exploring neighborhoods.
Behavior:
- completes trails,
- shares progress,
- competes with friends,
- returns weekly.
Examples:
- cafés,
- restaurants,
- bookstores,
- markets,
- gyms,
- bars,
- event venues.
Motivations:
- more foot traffic,
- customer discovery,
- measurable marketing ROI,
- repeat visits.
Behavior:
- funds campaigns,
- tracks analytics,
- rotates offers,
- creates promotions.
Motivations:
- city exploration,
- community building,
- earning commissions,
- curating experiences.
Behavior:
- designs trails,
- writes trivia,
- recruits merchants,
- moderates content.
The platform revolves around:
A trail is:
- a sequence of real-world stops,
- grouped by a theme,
- connected through map navigation,
- funded by merchants or sponsors.
Examples:
- Coffee Crawl
- Historical Downtown Trail
- Art Gallery Quest
- Weekend Food Trail
- Music Festival Hunt
- University Campus Quest
Each trail contains:
- multiple stops,
- challenges,
- rewards,
- and collectibles.
Player launches GeoQuest inside MiniPay.
App requests:
- wallet access,
- GPS permission,
- optional notifications.
Player sees:
- map of nearby quests,
- reward amounts,
- estimated duration,
- difficulty,
- popularity,
- categories.
Trail details include:
- total stops,
- distance,
- estimated reward,
- merchants involved,
- special NFTs,
- time remaining.
Player physically walks toward destination.
Map updates live using GPS.
When inside geofence radius:
- stop unlocks,
- challenge activates.
Possible challenge types:
- QR scan,
- trivia,
- photo upload,
- NFC tap,
- code entry,
- merchant interaction.
Challenge completion triggers:
- verification,
- backend validation,
- NFT mint eligibility.
Player receives:
- NFT location stamp,
- XP points,
- leaderboard progression.
After all stops:
- cUSD payout released,
- special achievement unlocked,
- progression updated.
Merchant creates account through dashboard.
Merchant onboarding includes:
- business name,
- category,
- address,
- GPS coordinates,
- operating hours,
- logo/images,
- payout wallet.
Merchant defines:
- stop location,
- challenge type,
- rewards,
- active hours,
- promotions.
Merchant deposits:
- cUSD budget,
- daily cap,
- reward-per-user.
Smart contract escrows funds.
Merchant sees:
- total visits,
- verified visits,
- trail completions,
- repeat visitors,
- conversion rates,
- active campaigns.
Merchant can attach:
- discounts,
- free items,
- QR coupons,
- loyalty bonuses.
Primary currency:
- cUSD
Reward models:
- fixed payout,
- pooled payout,
- bonus streak rewards.
NFTs represent:
- completed stops,
- achievements,
- event participation,
- rare seasonal collectibles.
NFT standards:
- ERC-1155 preferred.
Off-chain progression includes:
- levels,
- explorer rank,
- streaks,
- badges.
Each NFT contains:
- trail ID,
- stop ID,
- timestamp,
- rarity,
- location hash,
- artwork,
- season/event info.
NFTs should:
- unlock prestige,
- display achievements,
- support collections,
- grant future perks.
NFTs are NOT speculative assets.
Core mechanic:
- user must physically reach location.
Default unlock radius:
- 30–50 meters.
Validation includes:
- GPS coordinates,
- timestamp consistency,
- movement speed,
- accelerometer data,
- device fingerprinting.
This is mission-critical.
- GPS spoofing,
- emulator abuse,
- fake movement,
- screenshot replay,
- QR sharing,
- multi-account farming.
No reward valid without backend signature.
Validate:
- walking speed,
- movement continuity,
- accelerometer consistency.
Merchant QR refreshes periodically.
Impossible movement patterns flag account.
Track suspicious devices and accounts.
Players can:
- add friends,
- compare progress,
- send trail invites.
Leaderboard types:
- city-wide,
- weekly,
- trail-specific,
- merchant-specific.
Teams complete trails together.
Possible mechanics:
- bonus multipliers,
- group achievements,
- timed races.
Examples:
- Christmas Hunt,
- City Festival Trail,
- Restaurant Week Quest.
Trails expire after:
- hours,
- days,
- weekends.
Creates urgency and replayability.
Merchant funds:
- reward pool,
- platform fee,
- optional promotions.
Revenue streams:
- percentage of reward pools,
- featured placement,
- premium analytics,
- event sponsorship,
- custom trail creation.
Use:
- Celo Mainnet
Responsibilities:
- trail registry,
- reward escrow,
- completion verification,
- payout release.
Responsibilities:
- NFT minting,
- metadata storage,
- ownership tracking.
Functions:
- createTrail()
- fundTrail()
- submitStopProof()
- verifyTrailCompletion()
- claimReward()
- emergencyPause()
Functions:
- mintStamp()
- batchMint()
- tokenURI()
The backend is essential.
This is NOT fully decentralized.
Stores:
- trails,
- challenges,
- merchant info,
- schedules.
Handles:
- GPS verification,
- anti-cheat,
- challenge validation.
Signs valid completions.
Push notifications for:
- nearby trails,
- streak reminders,
- new events.
Processes:
- player metrics,
- merchant insights,
- retention.
Main player app.
- React
- Vite
- Tailwind
- TypeScript
- map,
- wallet integration,
- quests,
- profile,
- rewards,
- leaderboards.
Separate web app.
- campaign management,
- analytics,
- funding,
- stop creation.
Map should support:
- live player location,
- route visualization,
- stop clustering,
- geofencing,
- trail overlays.
- Mapbox GL JS
- Turf.js
Use MiniPay SDK for:
- wallet connection,
- signing,
- transactions,
- balance display.
Players should:
- never see gas fees,
- never manually switch chains,
- never handle complex crypto flows.
Everything should feel native.
- id
- wallet_address
- username
- xp
- level
- created_at
- id
- title
- description
- category
- reward_pool
- status
- id
- trail_id
- latitude
- longitude
- challenge_type
- id
- business_name
- wallet_address
- category
- id
- user_id
- trail_id
- completed_at
- GET /trails/nearby
- POST /stop/verify
- POST /trail/claim
- GET /leaderboard
- POST /merchant/trail/create
- POST /merchant/fund
- GET /merchant/analytics
- GPS validation,
- backend signer security,
- reward abuse prevention,
- wallet security,
- replay attack prevention.
- map rendering,
- GPS event load,
- analytics volume,
- notification delivery,
- fraud detection.
- map,
- nearby trails,
- GPS verification,
- QR challenges,
- cUSD rewards,
- basic NFT stamps.
- dashboard,
- create stop,
- fund rewards,
- basic analytics.
- verification,
- anti-cheat,
- payouts.
Start with:
- one city,
- one neighborhood,
- 10 merchants,
- 5–10 trails,
- 100–500 users.
Avoid premature scale.
GeoQuest eventually evolves into:
- a city-scale incentive layer,
- local commerce infrastructure,
- tourism gamification platform,
- and proof-of-presence advertising network.
Potential future integrations:
- tourism boards,
- public transit,
- universities,
- malls,
- festivals,
- sports events,
- local governments.
The product should feel:
- playful,
- lightweight,
- rewarding,
- social,
- modern,
- and hyper-local.
NOT:
- overly crypto-native,
- financially speculative,
- or technically intimidating.
The ideal user experience:
“I explored my city and got rewarded.”
Not:
“I interacted with blockchain infrastructure.”