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 that carries the calm tone of the product.

  • Next.js 16
  • React 19
  • Tailwind v4
  • GSAP + Lenis
34 Rendered pages 11 marketing + 6 legal routes, DE + EN
<14 Days to launch First commit to live operation
0 KB WebGL in the bundle Marble and portal look built from pure CSS
2 Languages German as default, English mirrored
Glenby homepage: forest hero with serif headline and Google Play button
glenby.de homepage: a forest at dusk instead of a stock mountain panorama

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. The app deliberately avoids competitive pressure and daily streak anxiety.

  • Honest proof

    GPS position plus timestamp as evidence. Deliberately no AI species detection, because real proof cannot be invented.

  • Daily tasks

    Small nature tasks nearby: a stream, a view, a tree. No competition, no global leaderboard.

  • Weekly streaks

    Streaks count per week, not per day. A missed day breaks nothing. Calm instead of casino mechanics.

  • Private & EU-hosted

    All app data lives in Frankfurt. End-to-end encrypted notes and chats, Consent Mode v2 with deny-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. No swipe carousel, no 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. Zero WebGL in the bundle, LCP stays clean, and every scene has a static fallback for reduced motion.

Typography: Fraunces as a variable display face with optical sizing, Hanken Grotesk for body text. Both self-hosted via next/font.

Glenby website section with gold-veined marble background built from pure CSS

Tech stack

in detail

  • Next.js 16

    App Router with cacheComponents, dynamic OG images via next/og, hosted on Vercel

    Framework
  • React 19.2

    Server components by default, client islands only for consent, waitlist and animations

    UI
  • TypeScript 6 strict

    Strict mode, zod-validated environment variables via @t3-oss/env-nextjs

    Language
  • Tailwind CSS v4

    Design tokens via @theme, 16px radius ceiling, a single easing curve

    Styling
  • GSAP + Lenis

    ScrollTrigger scenes with smooth scroll, every animation ships a reduced-motion fallback

    Motion
  • Supabase

    iOS waitlist via RPC in an isolated schema, no direct table access

    Backend
  • Resend

    Double opt-in for the iOS waitlist with honeypot, timing check and rate limiting

    Email
  • Strict CSP

    Hand-built security headers, CSP violation reporting, HSTS preload, security.txt

    Security

More than a 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 explicitly allowed by name in robots.ts, and JSON-LD without invented ratings.