Our own product · Live on Google Play
Glenby Microadventures, honestly verified
An Android app that hands out small nature tasks and verifies proof via GPS and timestamp, plus a bilingual marketing website written in the same calm tone as the app.
The product
Glenby hands out small outdoor tasks every day: a stream, a view, a tree. Proof is a photo with a GPS pin and a timestamp. We designed the app to avoid competitive pressure and daily streak anxiety.
-
Honest proof
GPS position plus timestamp as evidence. We left out AI species detection on purpose, because you cannot invent real proof.
-
Daily tasks
Small nature tasks nearby: a stream, a view, a tree. There is no competition and no global leaderboard.
-
Weekly streaks
Streaks count per week, not per day, so a missed day breaks nothing. The pace stays calm, without casino mechanics.
-
Private & EU-hosted
All app data lives in Frankfurt. Notes and chats are end-to-end encrypted, and Consent Mode v2 denies by default.
-
Co-op parties
Shared tasks with friends in real time, including party chat.
-
Trailmates (18+)
Moderated co-op matching by experience instead of photos, without a swipe carousel or an attractiveness ranking.
Marble without WebGL
The design brief called for gold-veined dark marble as the recurring brand material and a portal flight in the hero. The first draft planned a WebGL shader for it.
We shipped the same look without Three.js: background-clip on text, mask gradients, mix-blend-mode and GSAP timelines. The bundle contains no WebGL, which keeps LCP low, and every scene has a static fallback for reduced motion.
Typography: Fraunces as a variable display face with optical sizing and Hanken Grotesk for body text, both self-hosted via next/font.
Tech stack
in detail
-
Next.js 16
App Router with cacheComponents, dynamic OG images via next/og, hosted on Cloudflare Workers via OpenNext
-
React 19.2
Server components by default, client islands only for consent, waitlist and animations
-
TypeScript 6 strict
Strict mode, zod-validated environment variables via @t3-oss/env-nextjs
-
Tailwind CSS v4
Design tokens via @theme, 16px radius ceiling, a single easing curve
-
GSAP + Lenis
ScrollTrigger scenes with smooth scroll, every animation ships a reduced-motion fallback
-
Cloudflare Workers + D1
iOS waitlist via a custom endpoint, no direct table access. On Cloudflare since August 2026, previously Supabase
-
Resend
Double opt-in for the iOS waitlist with honeypot, timing check and rate limiting
-
Strict CSP
Hand-built security headers, CSP violation reporting, HSTS preload, security.txt
Behind the landing page
Security headers
Hand-written CSP with violation reporting, HSTS preload, COOP/COEP/CORP and security.txt per RFC 9116.
Legally sound
6 legal pages in both languages, including the German §356a cancellation button and 18+ labeling per JMStV.
GEO-ready
llms.txt, 28 AI crawlers allowed by name in robots.ts, and JSON-LD without invented ratings.