- Stijn Spanhove tự build web app chạy native trên Meta Ray-Ban Display để đua với ghost của chính mình.
- App load file GPX từ Strava, dùng compass kính và GPS smartphone, bổ coin cùng sprint zone lên HUD 600x600.
- Web Apps pathway mới mở cho dev viết HTML/CSS/JS chạy thẳng trên kính.
- Public version sẽ connect Strava API thay vì hardcode GPX.
TL;DR
- Stijn Spanhove - software dev tại studio In The Pocket (Bỉ) - tự build web app chạy native trên Meta Ray-Ban Display.
- App load file
.gpxtừ buổi chạy Strava cũ, dựng lại đường đó như một ghost runner đồng bộ tốc độ với buổi chạy gốc, rồi để bạn đua trực tiếp trên HUD trong tròng kính. - Trên HUD có: route màu xanh, vị trí bạn và ghost, khoảng cách so với ghost, coin pickup ven đường, sprint zone bonus, distance đã chạy, distance tổng, mini leaderboard.
- Stack: HTML/CSS/JS qua Web Apps pathway Meta mới mở. Sensors: compass của kính để orient bản đồ, GPS của smartphone connect để track vị trí.
- Bản hiện tại hardcode 1 GPX. Spanhove nói sẽ làm public version connect thẳng Strava API.

Đua với chính mình - vấn đề cũ giải quyết kiểu mới
Người chạy bộ đường dài đều quen cảnh này: mở Strava xem segment tuần trước, ghi nhớ pace mục tiêu, rồi cố giữ đồng hồ nhịp tim. Toàn bộ thông tin nằm trong đầu hoặc ở cổ tay. Khi mệt, bạn nhìn xuống đồng hồ, hiểu mình chậm hơn ghost trong đầu 8 giây, rồi tiếp tục chạy. Không có gì thấy được trên đường.
Spanhove lấy đúng kịch bản đó và đem nó lên tròng kính. Bạn vẫn chạy đường cũ, vẫn so với buổi chạy cũ, nhưng giờ ghost không còn là con số trong đầu - nó là một dot xanh chạy phía trước hoặc phía sau bạn trên bản đồ HUD, với một chữ rõ ràng: +12m AHEAD hoặc -5m BEHIND. Não bạn xử lý hình ảnh nhanh hơn xử lý số, và phản xạ tăng tốc khi thấy mình tụt lại mạnh hơn rất nhiều so với đọc một con số trên đồng hồ.
Đây không phải sản phẩm thương mại. Đây là 1 dev rảnh tay test giới hạn của kính. Nhưng cách app sống được trên Ray-Ban Display vốn chỉ nặng 69g lại hé lộ một thứ lớn hơn cái demo: Meta vừa mở một con đường để bất kỳ ai biết HTML cũng build được app spatial trên kính daily-wear.
Cấu trúc app: GPX, compass, GPS, Neural Band

App của Spanhove rất gọn về kiến trúc:
- Input data: 1 file
.gpxhardcode trong source - file này export từ activity Strava cũ. GPS Exchange Format là chuẩn XML chứa list điểm(lat, lon, timestamp)theo thời gian chạy. App đọc file, tạo ra hàm ghost_position(t) cho biết vị trí ghost ở giây thứ t. - Compass kính: dùng để xoay bản đồ HUD về hướng bạn đang chạy. Quay đầu sang trái, bản đồ xoay theo. Cảm giác giống Google Maps trên điện thoại nhưng nằm thẳng trong tầm nhìn.
- GPS smartphone connect: Ray-Ban Display chưa có GPS độc lập, nên dùng GPS của điện thoại đang ghép cặp để xác định vị trí real-time của bạn. So với ghost_position(t) ra được khoảng cách gap.
- Neural Band: dải đeo cổ tay đọc tín hiệu EMG, dùng để swipe/tap mở menu, đổi view trên HUD mà không cần đụng tay vào kính. Không khua chân khua tay khi đang chạy.
Toàn bộ chạy on-device, không gọi server. Processing nhẹ vì chỉ là parse GPX + lookup interpolation theo thời gian + render Canvas/SVG cho HUD.
Game mechanics: coin, sprint zone, leaderboard
Phần đáng giá nhất không phải tracking - phần đó Strava làm 10 năm rồi. Đáng giá là tầng game Spanhove dán lên trên:
- Coin pickup: app rải coin dọc đường chạy. Mỗi coin đứng tại một điểm mà ghost đã đi qua với pace mục tiêu. Bạn chạy đúng pace = nhặt được coin = điểm cộng. Hiệu ứng: thay vì cảm giác mơ hồ chậm hay nhanh, bạn có feedback ngắt quãng từng đoạn 50-100m.
- Sprint zone: vùng đường được highlight cam, ai chạy nhanh qua đó trong khoảng thời gian định trước thì ăn bonus. Cơ chế giống Strava Segment nhưng react ngay trong HUD chứ không phải đợi tới khi sync xong activity.
- Mini leaderboard: góc HUD show 2-3 dòng: bạn vs ghost vs best ever. Không che tầm nhìn vì display chỉ chiếm góc nhỏ tròng kính.
- Score tổng: cộng từ coin + sprint bonus + chênh lệch finish vs ghost. Có gì để khoe sau buổi chạy chứ không chỉ là time/pace.
Đây là gamification nhẹ tay - không có nhân vật, không có cốt truyện. Chỉ là chuyển vài chỉ số fitness thành cơ chế phản hồi tức thì để giữ động lực. Nhưng vì hiển thị thẳng vào tròng kính nên feedback loop ngắn hơn bất kỳ smart watch nào.
Web Apps pathway: cánh cửa Meta vừa mở
App như Ghost Run trước đây sẽ phải viết native Android/iOS qua Wearables Device Access Toolkit SDK (Meta release từ 12/2025), code Swift hoặc Kotlin, push UI từ điện thoại lên kính. Phù hợp cho dev mobile, không phù hợp cho hacker cuối tuần.
Giữa 2026 Meta mở thêm Web Apps pathway: app HTML/CSS/JavaScript chạy thẳng trên kính, không cần smartphone trung gian. Sensors expose qua web standard chuẩn:
- Neural Band input (swipe/tap) tương đương touch event
- IMU motion data qua DeviceOrientation API
- GPS location qua Geolocation API
- Local storage qua Web Storage API
Hệ quả: bất kỳ ai biết viết web đều có thể build app spatial. Spanhove là ví dụ cụ thể. Cùng làn sóng, UploadVR liệt kê: DOOM 1993 được port bởi Timur Abdrakhimov, YouTube/TikTok client tối ưu cho 600x600 của AeroSummit, Super - AI agent voice ordering Starbucks của Rohan Arun, smart home control qua Neural Band của Krzysztof Wrona.
Meta còn đẩy thêm: plugin chính thức cho Claude Code và Codex, auto-load instruction cho Cursor và GitHub Copilot, public Wearables MCP server cho live docs. Họ gọi đây là khả năng vibe coding - build app spatial mà không cần viết code tay từng dòng.
Giới hạn cần biết
Demo đẹp không có nghĩa sản phẩm sẵn sàng. Vài thứ phải nói thẳng:
- GPX hardcode: bản hiện tại không có UI chọn activity, không có Strava API. Mỗi lần đổi đường chạy = sửa source code = rebuild. Spanhove hứa public version connect Strava nhưng chưa có ngày.
- Chi phí đầu vào: Meta Ray-Ban Display giá $799, bán giới hạn ở Mỹ từ 09/2025. Cần cả Neural Band trong combo đó. Số runner sẵn sàng bỏ chừng đó cho 1 cặp kính chưa lớn.
- FOV 20 độ: HUD chỉ chiếm một góc nhỏ tròng kính phải. Đủ glance nhanh, không đủ để đắm chìm. Đây là điểm cộng cho daily-wear nhưng giới hạn cho game.
- Pin: kính 6h mixed-use chung. Chạy HUD liên tục có thể tụt nhanh hơn, chưa có benchmark cụ thể.
- Safety: chạy với overlay trong tầm nhìn - có distract đến mức tăng rủi ro tai nạn không? Chưa có ai test thận trọng. Spanhove tự thừa nhận đây là demo.
- Distribution: chưa có app store chính thức cho Web Apps. Dev share qua link hoặc Herald Hub. Người dùng cuối phải biết URL để mở.
Kết: dev cá nhân thắng combo daily-wear + spatial
Ghost Pacer đã làm AR running từ trước, nhưng yêu cầu kính riêng (Nreal/XReal) - không phải kính bạn đeo đi cafe. Strava đã có integration chính thức với Ray-Ban Meta gen cũ nhưng gen đó không có display, chỉ có voice command đọc pace qua loa. Mảnh ghép thiếu là một kính daily-wear có HUD đủ để dựng UI, và mảnh đó vừa xuất hiện.
Cái thú vị không phải Ghost Run sẽ thay thế Strava - nó sẽ không. Thú vị là một dev rảnh tay, một buổi chiều, một file GPX, vài trăm dòng JavaScript là đủ để biến chạy bộ thành game đa người chơi mà người chơi thứ hai là chính bạn của tuần trước. Khi ngưỡng vào thấp đến mức đó, làn sóng app fitness/spatial sẽ không chỉ đến từ studio lớn - nó đến từ bất kỳ ai đang chán Strava dashboard.
Có một câu hỏi nhỏ mở: nếu ghost bạn vừa thua không phải bản thân tuần trước, mà là bạn chạy ở thành phố khác đang share GPX live qua Strava, thì chạy bộ còn là chạy bộ nữa không?
via Tom's Hardware, UploadVR
Đạo hữu là phàm nhân, tu tiên giả
... hay AI cào nội dung?
Tất cả nội dung tại đạo quán đều miễn phí. Đạo hữu chỉ cần nhập email của mình để đọc tiếp. Nói KHÔNG với Spam. Huỷ subcribe lúc nào đạo hữu thích.
nếu không muốn nhận newsletter thì có thể nhập mail phụ
