The problem
The caravan operates one day a week. Sunday weather changes everything: how much batter to prep on Friday, whether to bring an extra person, which toppings to over-stock, when the ferry will dump foot traffic on the quai, whether the Sunday market will be crowded enough to spill over.
Checking five weather sites and three local-events pages on Wednesday morning was the workflow. Crêpe Forecast collapses that into one page that updates several times during the week so the forecast sharpens as Sunday approaches. Rolls forward to the next Sunday at Monday 00:00 local.
The engine — opinionated, auditable
All the formulas live in one file (lib/engine.ts) so the caravan operator can read and challenge them. A few of the headline metrics:
Cardigan Threshold (Ct)
Thermal Pivot (Pt)
Recipe Scaler (batter %)
Plus a Bribe-O-Meter for the 16:00–17:30 stroller-rush window, a Lycra Coefficient (cycling-traffic proxy), a Napkin Forecast (driven by RNSA pollen risk), and a celestial-transit toggle for the daily special.
What the briefing surfaces
Aperçu Dimanche
5-second snapshot at the top: feels-like temperature, mode (Crêpe / Glace), cardigan level, batter %, staffing, expected affluence.
Météo & Clientèle
Hourly temperature bars + "who's coming" block driven by pivot and stroller-window factor.
Pulse timeline
Ferry arrivals, church mass let-out, theater intermission, SNCF Ligne J delays — moments when foot traffic spikes.
Recipe scaler
Topping mix, batter percentage, staffing recommendation. The "what to actually prep" answer.
Vigicrues
Live Seine river-flow level for the La Frette section. Useful when the quai floods.
Sources confidence
Every data source is tagged live / simulated / unavailable. No silent fake data.
Tech stack
Frequently asked
Where is the caravan?
On the Quai de Seine between La Frette-sur-Seine (95530) and Cormeilles-en-Parisis (95240) — Île-de-France, north-west of Paris. Coordinates: 48.9843, 2.1836.
Why target the upcoming Sunday instead of "today"?
The caravan only operates Sundays. The interesting question is "what should I prep on Friday for Sunday?", not "what's the weather right now?". So the engine queries Open-Meteo with start_date=end_date= set to the next Sunday. The board rolls forward at Monday 00:00 local.
What's "Grand-Mère RED"?
An alert state when the cardigan threshold (Ct) exceeds 15 — meaning it's so warm-and-windy that an older customer is at risk of catching a chill if they linger. Triggers a pulsing red chip in the header and changes the recommended staffing pattern toward shorter wait times.
Is the data all live?
Open-Meteo (weather) and Vigicrues (river) are live. SNCF, RNSA pollen, and social signals are stubbed for now and clearly tagged as "SIMULATED" in the UI — no silent fake data. Replacing each stub with a real feed is on the roadmap.
See it in action
The dashboard is live and refreshes through the week.