Yonder.
A way to find enjoyable recipes from all over the world based on the food you routinely eat — a genuine leap outward, not another suggestion that looks like what you already made last week.
Keep the wide-noodle, saucy comfort you already love; move it to a smoky Thai stir-fry.
Every recommender is built to feed you more of what you already like. Yonder holds the opposite on purpose: it takes your routine as the anchor and returns exactly one dish you'd never have found on your own, at a distance from that routine you choose yourself — never a feed that never moves you. Calibrated distance instead of fit, every time.
Bored of the rotation, but won't gamble on a miss.
Most recipe apps fail one specific person completely: someone who likes to cook, is tired of the same rotation, but won't risk an evening on a recipe that flops. Fit-optimizing apps show more of the same. Option-dumping apps turn dinner into research. Neither one moves that person out of the rut without asking them to gamble first. Yonder is built for that person alone, on a single non-negotiable principle: measured novelty, never maximum choice.
One destination, not a feed.
List what you actually eat on repeat. What comes back is never a feed to scroll — it's a single destination: one new dish, tuned to the distance you set, and never handed over without everything it takes to actually cook it:
| Area | Technical content |
|---|---|
| Frontend | Vanilla JavaScript with native modules, shared state, and a feature registry. |
| Recipe selection | Filters the corpus, ranks or samples up to 140 candidates, then asks Sonnet to select one. The returned dish is resolved to a corpus candidate. |
| Distance controls | Distance remains 1–5. Focus changes the active routine; mood changes preparation preferences. Neither changes the numeric distance. Novelty calibration is instructed through the model prompt. |
| Empty results and generated previews | An exhausted candidate pool returns “No dish found.” Generated previews belong to the explicit free-selection path or unavailable-corpus fallback. |
| Models | Sonnet 4.6 selects recipes; Haiku 4.5 can perform additional constraint checks. Images use Gemini 3.1 Flash Image. |
| Learning | Account reactions and collected techniques/ingredients contribute context to later prompts. Anonymous or missing-profile requests skip this stage; some reactions produce no adjustment. |
| Storage and synchronization | D1 stores substantially more than accounts. IndexedDB queues edits locally; a revision-based protocol handles synchronization, retries, deletion records, conflicts, and recovery. General rollout occurred September 30, 2026. |
| Images | Generated dish images use Google reference thumbnails, Gemini, and a persistent KV cache. |
| Hosting and limits | One product Worker serves APIs and static assets, with D1, KV, a Durable Object limiter, and scheduled handlers. Recipe and image requests have separate admission budgets. |
| Cost | Requests can involve multiple model calls, plus separate image generation. The cent-per-pick figure comes from an older estimate and is not verified as a current cost. |