Food security
Community gardens, food-rescue networks, fresh-food access in disadvantaged pockets.
01 — Pitch Brief · 2026
MESH turns Melbourne suburbs into a living, multiplayer game of resilience — powered by open data, six AI agents, and the people already doing the work.
02 — Premise
Every Australian suburb is sitting on quiet abundance — gardens that produce too much, retirees who could teach welding, neighbours who'd happily check on each other in a heatwave if anyone asked. The capacity exists. The wiring doesn't.
There's no shared map of who can teach what, who has spare zucchini, who's ready in a heatwave. The information lives in group chats, in heads, in council PDFs that nobody reads.
data.melbourne.vic.gov.au alone publishes 239 datasets. Almost none of them inform a decision a resident will make this week. The data isn't missing — the loop is.
"City-wide" is too coarse to coordinate; "neighbourhood" is too granular to measure. The 3-mile suburb — Carlton, Footscray, Brunswick — is the natural unit. We score, narrate, and gamify at that scale.
03 — Resilience Pillars
Each pillar maps to a measurable, defensible signal in open data. The resilience index is their average — generated in the database, never written by the app.
Community gardens, food-rescue networks, fresh-food access in disadvantaged pockets.
Neighbourhood houses, free training, who-can-teach-what mapped per postcode.
Tool libraries, materials exchange, the circular-economy edge of every suburb.
Foot traffic, third places, the texture of weak ties that holds a place together.
Heatwave plans, defibrillator coverage, who calls who when the grid wobbles.
04 — The Loop
05 — Six Agents
Each agent has a single job and a strict output schema. No hallucinated abundance. No vibe-based moderation. Pin to claude-sonnet-4-20250514.
Reads suburb data. Proposes the missing initiative.
Conditions on SEIFA, weakest pillar, season, and what was already tried. Returns a 3–5 step plan, an XP reward, and a plain-English rationale.

Checks photo + text. Decides if XP is earned.
Vision-capable. Awards XP, queues for human review when confidence drops below 0.7, never silently swallows a submission.
Pairs supply with demand within 10km.
Semantic match across "I have" and "I need" posts, draft intro message included. Skips when the radius is too sparse to be useful.
Writes a weekly digest of what changed.
Plain text, cached for 7 days, never regenerated mid-week. The narrative is grounded in real pillar deltas, not hallucinated headlines.

Chat. Plans your community project step by step.
Streaming SSE. Injects live suburb context — population, SEIFA, weakest pillar — so the advice is grounded in this postcode, not a generic prompt.

Notices when a number moves and asks why.
Runs on each data sync. Classifies each delta as opportunity / risk / info and spawns the relevant quest or alert.
06 — The Game Layer
The point isn't badges. The point is to make a hot tip from a neighbour, a Sunday-morning fence repair, a free CPR class — feel like progress that's seen by your community, not lost to the void.
07 — Provenance
data.melbourne.vic.gov.au only covers the City of Melbourne LGA. Suburbs across the river get SEIFA-derived approximations. The app records this per-row, in code, so nobody is misled.
Datasets used
scripts/seed-suburbs.ts. Used as the fallback for any pillar with no direct signal.pnpm fetch:suburb-geo into src/lib/data/suburb-geometries.json.08 — Stack
09 — Roadmap
SvelteKit scaffold, Vercel deploy, brand bones
Open-data wrappers, real-data seed
Migrations + typed Supabase client (offline)
Google Maps WebGL vector + tilt + 3D buildings + 2D/3D toggle
Demo personas + Admin role + /admin route; magic-link gated on Supabase
Seeded + AI cards, EXAMPLE/AI chips, persistence; submission UI in 07
Endpoint + signal strip + How-this-was-created panel; edge-fn pending
Vision agent, photo verification
Resource board + AI pairing
Both agents live; weekly cron pending
Anomaly Watcher, a11y, public beta
10 — Join
MESH is a prototype, deliberately scoped: five suburbs, six agents, ten sprints. If the loop works at this scale, it scales sideways to every LGA in the country.