ParkLens
Built at Meta Global AI Developer Hackathon · Oct 26, 2026 · Remote

ParkLens is a personalized, grounded guide for a wildlife park, built for Kolmården in Sweden (the park near my home in Norrköping). The problem is one every family with small kids knows. A day at the park costs about 2,000 SEK and much of it leaks into queues, wrong turns and rides the kids turn out to be too short for. Eye-tracking research finds that only 10–30% of zoo visitors read the animal signs; small children can't read them at all, and tourists often can't read Swedish. How it works, in the order a family uses it: 1. Say who's coming. "Two adults, Mia is five and 110 cm, Leo is nine, we love big cats and dolphins, we have five hours." Muse Voice Transcribe hears it and Muse Spark turns it into a structured family profile. 2. Get a day that fits. A planner written in plain code ranks the park's 50 animals and 11 rides by interest, enforces every height and age rule from the park's own pages, inserts a break every 90 minutes, and orders the stops by walking distance using GPS points taken from the park's site. Rides the kids can't ride land in a "Not this time" box with the reason. Muse Spark writes one sentence per stop; it never decides whether a child may ride. 3. Point at an animal. SAM 3.1 finds it in the frame while Muse Spark picks which of the park's listed species it is, or "none". The story is told at the child's level, in the family's language, using only the park's own text, with the source page linked. Anything not on the park's list is refused rather than guessed. 4. Time travel. Muse Image repaints the animal SAM boxed: in its wild habitat, a million years ago as its ancestor, or a century from now. A before/after slider, and a share card for X. 5. Re-plan. "We're tired, one hour left" or "Kids want more rides" re-plans the rest of the day from where the family is standing on the map. What's computed: eligibility, route, times, sources. What's generated: the words and the pictures. The hackathon rules ban "basic RAG" and "simple image analyzers", and ParkLens is neither: there is no retrieval step, Spark selects from a closed catalogue and code looks up the facts; the Lens combines detection, catalogue identification, grounded narration and image generation around the park's data. Stack: FastAPI backend (deterministic planner, rules engine, SAM special-token parser, per-IP rate limiting, 28 tests), Next.js 16 PWA (voice, camera, map, share), knowledge base built from a public, robots.txt-permitted crawl of the park's website by one script. All application code was written during the hackathon. Beyond the hackathon: I want to pitch this to Kolmården's owner, Parks & Resorts, as an embeddable layer on top of their existing site, not a replacement for their app.