Glenby
Android App
Die Mikroabenteuer-App hinter glenby.de: 14.702 Naturaufgaben mit GPS-Verifizierung, Co-op-Partys, Videoanrufe und E2E-verschlüsselte Chats. Gebaut als Bare React Native App mit lokalen Gradle-Builds.
Die zugehörige Marketing-Website hat eine eigene Case Study.
Tagesansicht mit Aufgaben und Saison-Hinweisen
Quest-Karte mit MapLibre und Offline-Paketen
Sammlung: alles Gefundene an einem Ort
Funktionsumfang
Ruhige Gamification statt Casino-Mechanik. Jede Funktion respektiert die Privatsphäre.
Tagesaufgaben mit GPS-Beweis
Aufgabe wählen, rausgehen, Foto mit GPS-Pin und Zeitstempel aufnehmen. XP-Multiplikatoren je nach Verifizierungsgrad statt blindem Vertrauen.
14.702 Naturaufgaben
Zweisprachig, kategorisiert in 8 Naturkategorien, nach Schwierigkeit und Saison gefiltert. Ein Validierungsskript prüft die Inhalte automatisch.
Sammlung & Erinnerungen
Automatische Foto-Sammlung nach Kategorien plus Monats- und Wochenalben.
Wochen-Streaks & 35 Abzeichen
Streaks zählen pro Woche. Abzeichen mit sichtbarem Fortschritt statt Konfetti-Kanonen.
Co-op Partys
Live-Sessions mit Freunden über Supabase Realtime Presence, gemeinsame Scavenger-Listen und Party-Chat.
1:1-Videoanrufe
WebRTC-Anrufe mit nativem Picture-in-Picture. Das Signaling läuft über die bestehende Realtime-Infrastruktur.
E2E-verschlüsselte Chats
Foto-Threads pro Freund, verschlüsselt mit tweetnacl. Vor dem Teilen prüft ein On-Device-NSFW-Filter jedes Bild.
Trailmates (18+)
Anonymes Co-op-Matching nach Erfahrungslevel statt Fotos, mit Alterstor, Safety-Flow und Blockierfunktion.
Offline-Karten
MapLibre mit herunterladbaren Kartenpaketen. Die App bleibt auch ohne Netz draußen nutzbar.
Feed mit Transparenz
Freunde-Feed mit Ranking nach Verbundenheit und einer sichtbaren Zeile, warum ein Beitrag angezeigt wird.
Abo nach deutschem Recht
Stripe-Abo mit Kündigungsbutton nach §312k und Widerruf nach §356a direkt in der App.
Barrierefreiheit als Gate
Farb-Tokens in OKLCH, ein Build-Skript prüft jede Kombination gegen WCAG 2.2 AA und bricht bei Verstößen ab.
Tech Stack im Detail
Bare Workflow mit New Architecture, Builds laufen lokal über Gradle statt über Cloud-Dienste
Dateibasierte, typisierte Routen über 57 Screens, Expo-Module als Bibliothek statt Expo Go
Strict Mode über 337 Quelldateien in 34 Feature-Domains
Zwei eigene Edge Functions mit isoliertem Schema und eigenem JWT-Secret, kein direkter Datenbankzugriff vom Client
Lokaler State in nativen Key-Value-Stores, die App startet und arbeitet offline-first
1:1-Videoanrufe zwischen Freunden, Signaling läuft über Supabase Realtime Broadcast statt über einen eigenen Server
Eigenes Expo-Native-Modul für Android Picture-in-Picture während Anrufen
Bild-Labeling als Hinweis und ein NSFW-Filter vor jedem geteilten Foto, beides komplett auf dem Gerät
E2E-verschlüsselte Chats und Foto-Freigaben zwischen Freunden
Explorationskarte mit herunterladbaren Offline-Paketen
Worklet-Animationen, FlashList v2 für Listen, Film-Grain-Textur als Skia-Shader
483 Unit Tests in 63 Testdateien, plus ein Skript, das jede Farbkombination gegen WCAG 2.2 AA prüft
Drei Architektur-Entscheidungen
Kein Supabase Auth, kein PostgREST: Der gesamte Datenverkehr läuft über zwei eigene Edge Functions mit isoliertem Schema und eigenem JWT-Secret.
Bild-Labeling (ML Kit) und NSFW-Prüfung (TFLite) laufen lokal. Kein Foto verlässt für die Analyse das Gerät.
GPS plus Zeitstempel ist der eigentliche Nachweis, ML liefert nur Hinweise. Anti-Cheat-Multiplikatoren gewichten XP nach Verifizierungsgrad.