The Project
The Deal-cathlon AR Hunt is the first of two gamification concepts Code Crush prototyped for Decathlon Vietnam's 50th-anniversary campaign. It is an online-to-offline treasure hunt: players qualify from their phone, then have to physically show up at one of five Decathlon stores during a "Grand Event Hour" (Giờ G) to hunt down and claim a real prize.
Everything below is a live, playable web app — built in Next.js, no app install, deployed to Google Cloud Run. It runs the full flow end to end: catch game → access pass → store pick → GPS check-in → camera AR hunt → prize draw → in-store redemption.

The Brief
Decathlon's ask (from the campaign pitch deck) was direct:
Connect the online audience to the point of sale. Drive real foot traffic into stores, capture CRM data, and make it shareable — not just another spin-to-win.
The mechanic they outlined was a five-step journey:
The hard part is step 4. "Prove you're there" is what separates a real footfall driver from a coupon anyone can claim from their sofa.
How Code Crush Answered It
We built the whole journey as a single, fast state machine and made each step feel like a distinct, branded moment.
1. The catch mini-game. Deal tiles fall; you tap to catch them. A 35-second round, a speed boost at 10 catches, and a score threshold of 15 to earn a pass. Capping it at one attempt a day is what keeps the pass scarce.

2. The Access Pass. Win, and you get a barcoded pass with a live countdown to your store's event window. It's saved to the device, so players can close the tab and come back — the pass (and its countdown) is still there.

3. Pick your store. Five real Decathlon Vietnam locations, each with its floor area and the shared Giờ G (5PM Thursday) window.

4. The check-in — a real 200m geofence. This is our answer to "prove you're there." Before the hunt unlocks, the app asks for GPS and checks you're within 200 metres of the store you chose. Too far, and it tells you exactly how far off you are.
5. The AR hunt. Inside the radius, the phone's rear camera opens and drops are hidden in 3D space around you. You physically turn to find them, following a radar that runs warmer as you get closer, then tap to collect.

6. The reward draw & redemption. Bagging the grand drop opens a weighted prize draw from a fixed pool of exactly 50 prizes per store ("50 Đặc Quyền Tuổi 50"), then produces a redemption ticket the player shows to staff — and can save to their phone as an image.


How We Coded It
The Limits (and the honest trade-offs)
We think being clear about the edges is part of the job:
Why It Works for Decathlon
The whole point is the walk to the store. Qualifying online is fun, but the pass is worthless until you're standing inside a Decathlon during Giờ G — and the GPS gate plus camera hunt make "being there" the actual game. That's footfall you can measure, first-party data at redemption, and a shareable moment, all from a link.
This is one of two concepts from the pitch. Its sibling — a shareable social AR face-filter game — is written up in Decathlon "Deal Frenzy / Cơn Lốc Deal": A Shareable WebAR Face-Filter Game.
Prototype designed and built by Code Crush as a concept for Decathlon Vietnam. Store data, prizes, and event timing are illustrative.
Tagged with


