Lane E R20 (v4.0-beta): the density widening — widened fetch, 5 caches re-emitted, towns index
Ledger #2 (E's half), built to C's LANE_C_PUB §6 table under John's SUBTLE directive. - Widened fetch: C's tasteful staple list (shop=* + amenity=cafe per C's dagger note), mapped through C's copy-paste table onto EXISTING registry types (no new archetypes). Guardrails honoured: no vehicle/fuel/funeral/storage/industrial, no pure services. New raw snapshot per town (the fetcher auto-refetches when the class list changes -- query recorded in each snapshot), committed like the first. - SUBTLE by construction: secondhand HEROES never subsampled; texture capped at 3x heroes (top of C's ~2-3x band), over-cap towns seed-subsampled deterministically (sha256(townKey:osmId)) with every drop counted in counts.textureDropped. Result 3.0x in all five: katoomba 20+60 (-4), newtown 18+54 (-156), fremantle 20+60 (-81), bendigo 9+27 (-81), castlemaine 6+18 (-43). Density 6-21 -> 24-80 shops (3-4x). - web/assets/towns/index.json (new, E-owned): {schema, generated, license, attribution, towns[{key, town, state, shops, roads}]} -- B's selector can drop the REAL_TOWNS hardcode (hud.js:11). - Deterministic (byte-identical re-run, 0 re-fetch). ODbL: SOURCES.md + per-cache license/attribution. -> Lane A (absorb pass): (1) 10 expected golden re-pins -- the widening moves every real town's base+gig golden (designed E->A handoff); synthetic 0x3fa36874 UNMOVED, fixtures frozen. (2) SEAM: index.json trips selfcheck's town glob (selfcheck.js:467 takes every top-level towns/*.json as a cache) -- one-line fix in your file: .filter(f => f.endsWith('.json') && f !== 'index.json'). Didn't touch selfcheck.js (yours, you're mid-round in it); Fable spec'd the index at this path so the path stays. -> Lane C: kept video_games -> video (absent from your §6 table; was already shipping as video pre-widening, so the fallback would have regressed it to opshop). Same family, same target -- flagging for your table. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
85745d2017
commit
078245f7bd
@ -1,5 +1,54 @@
|
||||
# LANE E — cross-lane notes
|
||||
|
||||
## Round 20 — v4.0-beta THE FIVE TOWNS: the density widening ⟨v4-beta⟩
|
||||
|
||||
> Ledger #2, E's half — built to **C's LANE_C_PUB §6 table** under **John's SUBTLE directive**
|
||||
> ("texture, not takeover"). Widened fetch → re-emitted 5 caches → `towns/index.json`.
|
||||
> → **Lane A: caches re-emitted, densities are yours to absorb + re-pin** (see the two flags below).
|
||||
> → **Lane B: `index.json` is live — drop the `REAL_TOWNS` hardcode in `hud.js:11`.**
|
||||
|
||||
**The widening.** `build_towns.py` now fetches C's tasteful staple list (`shop=*` + `amenity=cafe`,
|
||||
per C's †) and maps every class through C's copy-paste table onto **existing** registry types — no new
|
||||
archetypes. Guardrails honoured: **no** vehicle/tyres/fuel, funeral, storage, industrial, or pure
|
||||
services (hairdresser/beauty/bank/laundry/estate_agent). Raw is a **new snapshot** (the fetcher
|
||||
auto-refetches when the class list changes — the query is recorded in each snapshot, so nobody has to
|
||||
remember `--refetch`), committed like the first. Deterministic: same raw → byte-identical cache.
|
||||
|
||||
**SUBTLE, enforced by construction.** The secondhand **heroes are never subsampled** (they're the
|
||||
game). Texture is capped at **3× the hero count** (the top of C's ~2–3× band — keeps the town alive
|
||||
without letting retail take over); over-cap towns are **seed-subsampled deterministically**
|
||||
(`sha256(townKey:osmId)` rank — stable across rebuilds so A's goldens hold) and **every drop counted**
|
||||
in `counts.textureDropped`:
|
||||
|
||||
| town | heroes | texture | ratio | dropped | total | shop mix |
|
||||
|---|---|---|---|---|---|---|
|
||||
| katoomba_real | 20 | 60 | 3.0× | 4 | **80** | milkbar 33 · dept 22 · opshop 13 · stall 5 · book 4 · record 2 · video 1 |
|
||||
| newtown_real | 18 | 54 | 3.0× | 156 | **72** | milkbar 30 · dept 21 · opshop 6 · record 5 · book 4 · stall 3 · toy 2 · video 1 |
|
||||
| fremantle_real | 20 | 60 | 3.0× | 81 | **80** | milkbar 43 · dept 16 · opshop 9 · book 5 · toy 2 · video 2 · pawn 1 · record 1 · stall 1 |
|
||||
| bendigo_real | 9 | 27 | 3.0× | 81 | **36** | milkbar 14 · dept 12 · opshop 3 · book 3 · stall 1 · record 1 · video 1 · pawn 1 |
|
||||
| castlemaine_real | 6 | 18 | 3.0× | 43 | **24** | milkbar 9 · dept 6 · opshop 4 · stall 3 · book 2 |
|
||||
|
||||
Density is now **3–4× pre-widening** (6–21 → 24–80 shops) — inside the ledger's 3–6× expectation for A.
|
||||
Katoomba reads right: the op shops (Cancer Help, Tanglecare, Cat Defence, Red Shield) still anchor the
|
||||
strip, now with The Hatters Cafe, Blue Mountains Chocolate Co, K Hub and Bunnings as texture around them.
|
||||
|
||||
**`web/assets/towns/index.json`** (new, E-owned): `{schema:"procity-towns-index/1", generated, license,
|
||||
attribution, towns:[{key, town, state, shops, roads}]}` — 5 towns, built from every cache on disk.
|
||||
|
||||
### ⚠ Two flags for Lane A (both land in your absorb pass)
|
||||
1. **10 expected golden re-pins** — the widening moves every real town's base + gig golden (5 × 2).
|
||||
That's the designed E→A handoff (ledger #2). **Synthetic `0x3fa36874` is UNMOVED**; fixtures frozen.
|
||||
2. **`index.json` trips selfcheck's town glob** (a real seam — `selfcheck.js:467` takes *every*
|
||||
top-level `towns/*.json` as a cache, so the index validates as a town and fails). **One-line fix in
|
||||
your file:** `.filter(f => f.endsWith('.json') && f !== 'index.json')`. I didn't touch `selfcheck.js`
|
||||
— it's yours and you're mid-round in it. Fable spec'd the index at this path (ledger #2/#5, B reads
|
||||
it there), so the path stays; the glob is what needs to learn about it.
|
||||
|
||||
### → Lane C (one-line map addition)
|
||||
`video_games` wasn't in your §6 table (you listed `video`/`games` → `video`). It was already shipping as
|
||||
`video` pre-widening, so I kept **`video_games` → `video`** rather than regress those shops to `opshop`
|
||||
via the fallback. Same family, same target — flagging so your table and my emit stay the one truth.
|
||||
|
||||
## Round 18 — v4.0-alpha REAL ROADS: the road-geometry fetch ⟨v4-alpha⟩
|
||||
|
||||
> Ledger #3 — E fetches the real street geometry; A's lift builds the CityPlan graph from it.
|
||||
|
||||
@ -17,7 +17,7 @@ attribution ships IN every cache (`license`/`attribution`) + `SOURCES.md`. Hours
|
||||
registry supplies them at plan time (contract shop = {id,name,type,lat,lon,suburb}). Overpass is an
|
||||
outward-facing fetch (John-authorized scout, once per town, raw cached).
|
||||
"""
|
||||
import os, sys, json, re, math, time, datetime, urllib.request, urllib.parse, urllib.error
|
||||
import os, sys, json, re, math, time, datetime, hashlib, urllib.request, urllib.parse, urllib.error
|
||||
|
||||
ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
TOWNS_DIR = os.path.join(ROOT, "web", "assets", "towns")
|
||||
@ -28,20 +28,55 @@ UA = "PROCITY-townscout/0.1 (real-map scout; OpenStreetMap ODbL data)"
|
||||
# Compact real AU towns: center (lat,lon) + query box span (km). `katoomba_real` is the fixture
|
||||
# comparison (vs the hand-made `katoomba` in osm_fixture.js). Spans kept tight so each is ONE town.
|
||||
TOWNS = {
|
||||
"katoomba_real": {"town": "Katoomba", "center": (-33.7145, 150.3120), "span_km": 3.0},
|
||||
"newtown_real": {"town": "Newtown", "center": (-33.8985, 151.1790), "span_km": 2.6},
|
||||
"fremantle_real": {"town": "Fremantle", "center": (-32.0555, 115.7480), "span_km": 2.6},
|
||||
"bendigo_real": {"town": "Bendigo", "center": (-36.7580, 144.2810), "span_km": 3.4},
|
||||
"castlemaine_real": {"town": "Castlemaine", "center": (-37.0640, 144.2170), "span_km": 3.0},
|
||||
"katoomba_real": {"town": "Katoomba", "state": "NSW", "center": (-33.7145, 150.3120), "span_km": 3.0},
|
||||
"newtown_real": {"town": "Newtown", "state": "NSW", "center": (-33.8985, 151.1790), "span_km": 2.6},
|
||||
"fremantle_real": {"town": "Fremantle", "state": "WA", "center": (-32.0555, 115.7480), "span_km": 2.6},
|
||||
"bendigo_real": {"town": "Bendigo", "state": "VIC", "center": (-36.7580, 144.2810), "span_km": 3.4},
|
||||
"castlemaine_real": {"town": "Castlemaine", "state": "VIC", "center": (-37.0640, 144.2170), "span_km": 3.0},
|
||||
}
|
||||
|
||||
# OSM shop tags we scout (on-theme: the game's secondhand/media/hobby world) → registry SHOP_TYPE.
|
||||
SHOP_RE = "charity|second_hand|music|antiques|books|toys|games|video_games|pawnbroker"
|
||||
TYPE_MAP = {
|
||||
"books": "book", "music": "record", "toys": "toy", "games": "toy",
|
||||
"video_games": "video", "video": "video", "pawnbroker": "pawn",
|
||||
"charity": "opshop", "second_hand": "opshop", "antiques": "opshop",
|
||||
# ── the class list (v4.0-beta, ROUND20 ledger #2 — C's LANE_C_PUB §6 table, John's SUBTLE directive) ──
|
||||
# HEROES = the secondhand shops (they ARE the game) — never subsampled. TEXTURE = the everyday
|
||||
# main-street staples a real AU town has (bakery/cafe/chemist/newsagent/clothes/…). Tasteful staples
|
||||
# ONLY per C's guardrail: no vehicle/tyres/fuel, funeral, storage, industrial, and no pure services
|
||||
# the player never browses (hairdresser/beauty/travel_agency/bank/laundry/estate_agent).
|
||||
HERO_CLASSES = {"charity", "second_hand", "antiques", "vintage", "books", "bookshop",
|
||||
"music", "video", "games", "video_games", "pawnbroker", "toys"}
|
||||
TEXTURE_CLASSES = {
|
||||
"bakery", "cafe", "confectionery", "pastry", "chocolate", "deli", "delicatessen", "butcher",
|
||||
"cheese", "coffee", "tea", "convenience", "kiosk", "general", "dairy", "newsagent", "stationery",
|
||||
"chemist", "pharmacy", "cosmetics", "perfumery", "clothes", "fashion", "boutique", "shoes", "bag",
|
||||
"jewelry", "jewellery", "department_store", "variety_store", "supermarket", "hardware",
|
||||
"doityourself", "trade", "electronics", "mobile_phone", "furniture", "houseware", "homeware",
|
||||
"greengrocer", "florist", "farm", "garden_centre",
|
||||
}
|
||||
AMENITY_CLASSES = {"cafe"} # C's †: cafe is amenity=*, not shop=*
|
||||
SHOP_CLASSES = (HERO_CLASSES | TEXTURE_CLASSES) - AMENITY_CLASSES
|
||||
|
||||
# C's copy-paste map (LANE_C_PUB §6). Every target is an EXISTING registry type — no new archetypes.
|
||||
# (+ `video_games`→video: C listed video/games→video; video_games is the same family and was already
|
||||
# shipping as `video` pre-widening — kept so those shops don't regress to opshop. Flagged to C.)
|
||||
TYPE_MAP = {
|
||||
"charity": "opshop", "second_hand": "opshop", "antiques": "opshop", "vintage": "opshop",
|
||||
"books": "book", "bookshop": "book", "music": "record", "video": "video", "games": "video",
|
||||
"video_games": "video", "pawnbroker": "pawn", "toys": "toy",
|
||||
"bakery": "milkbar", "cafe": "milkbar", "confectionery": "milkbar", "pastry": "milkbar",
|
||||
"chocolate": "milkbar", "deli": "milkbar", "delicatessen": "milkbar", "butcher": "milkbar",
|
||||
"cheese": "milkbar", "coffee": "milkbar", "tea": "milkbar", "convenience": "milkbar",
|
||||
"kiosk": "milkbar", "general": "milkbar", "dairy": "milkbar", "newsagent": "milkbar",
|
||||
"stationery": "milkbar", "chemist": "milkbar", "pharmacy": "milkbar", "cosmetics": "milkbar",
|
||||
"perfumery": "milkbar",
|
||||
"clothes": "dept", "fashion": "dept", "boutique": "dept", "shoes": "dept", "bag": "dept",
|
||||
"jewelry": "dept", "jewellery": "dept", "department_store": "dept", "variety_store": "dept",
|
||||
"supermarket": "dept", "hardware": "dept", "doityourself": "dept", "trade": "dept",
|
||||
"electronics": "dept", "mobile_phone": "dept", "furniture": "dept", "houseware": "dept",
|
||||
"homeware": "dept",
|
||||
"greengrocer": "stall", "florist": "stall", "farm": "stall", "garden_centre": "stall",
|
||||
}
|
||||
# John's directive: texture, not takeover. If a town's general retail would drown the secondhand
|
||||
# strip, seed-subsample the TEXTURE classes toward C's ~2–3× band; heroes are never touched and
|
||||
# every drop is counted (counts.textureDropped).
|
||||
TEXTURE_CAP = 3.0
|
||||
|
||||
# ── roads[] (schema v2, ROUND18 REAL ROADS) ─────────────────────────────────────────────────────
|
||||
# We FETCH every OSM highway tier A's ROAD_KIND maps (→ raw cache, full provenance / beta-ready) but
|
||||
@ -114,18 +149,27 @@ def overpass_post(q):
|
||||
time.sleep(wait)
|
||||
|
||||
|
||||
def shops_query(bb):
|
||||
box = f'{bb["minLat"]:.5f},{bb["minLon"]:.5f},{bb["maxLat"]:.5f},{bb["maxLon"]:.5f}'
|
||||
return (f'[out:json][timeout:180];('
|
||||
f'nwr["shop"~"^({"|".join(sorted(SHOP_CLASSES))})$"]["name"]({box});'
|
||||
f'nwr["amenity"~"^({"|".join(sorted(AMENITY_CLASSES))})$"]["name"]({box});'
|
||||
f');out center;')
|
||||
|
||||
|
||||
def fetch_raw(key, bb, refetch):
|
||||
"""Return the raw Overpass elements list, cached in-repo so re-runs never re-fetch."""
|
||||
"""Raw Overpass elements, cached in-repo so re-runs never re-fetch. Auto-refetches when the CLASS
|
||||
LIST changes (each snapshot records its query) — that's how the R20 widening lands as a NEW raw
|
||||
snapshot without anyone remembering --refetch."""
|
||||
os.makedirs(RAW_DIR, exist_ok=True)
|
||||
path = os.path.join(RAW_DIR, key + ".overpass.json")
|
||||
q = shops_query(bb)
|
||||
if os.path.exists(path) and not refetch:
|
||||
w = json.load(open(path))
|
||||
return w["elements"], w.get("fetchedAt")
|
||||
q = (f'[out:json][timeout:120];'
|
||||
f'nwr["shop"~"^({SHOP_RE})$"]["name"]'
|
||||
f'({bb["minLat"]:.5f},{bb["minLon"]:.5f},{bb["maxLat"]:.5f},{bb["maxLon"]:.5f});'
|
||||
f'out center;')
|
||||
print(f" [{key}] fetching Overpass (bounded {bb['minLat']:.3f},{bb['minLon']:.3f} … {bb['maxLat']:.3f},{bb['maxLon']:.3f})")
|
||||
if w.get("query") == q:
|
||||
return w["elements"], w.get("fetchedAt")
|
||||
print(f" [{key}] class list changed → new raw snapshot")
|
||||
print(f" [{key}] fetching Overpass shops (widened, bounded)")
|
||||
els = overpass_post(q)
|
||||
fetched = datetime.date.today().isoformat()
|
||||
json.dump({"fetchedAt": fetched, "endpoint": OVERPASS, "query": q, "bbox": bb, "elements": els},
|
||||
@ -178,7 +222,7 @@ def process(key, cfg, els, fetched, roads=None):
|
||||
rows, seen = [], set()
|
||||
for el in els:
|
||||
t = el.get("tags", {})
|
||||
name, osm_shop = t.get("name"), t.get("shop")
|
||||
name, osm_shop = t.get("name"), (t.get("shop") or t.get("amenity")) # cafe rides amenity=*
|
||||
lat = el.get("lat", el.get("center", {}).get("lat"))
|
||||
lon = el.get("lon", el.get("center", {}).get("lon"))
|
||||
if not (name and osm_shop and isinstance(lat, (int, float)) and isinstance(lon, (int, float))):
|
||||
@ -206,9 +250,24 @@ def process(key, cfg, els, fetched, roads=None):
|
||||
continue
|
||||
seen2.add(k2)
|
||||
shops.append({"id": r["id"], "name": pname, "type": TYPE_MAP.get(r["osm"], "opshop"),
|
||||
"lat": round(r["lat"], 6), "lon": round(r["lon"], 6), "suburb": r["suburb"]})
|
||||
"lat": round(r["lat"], 6), "lon": round(r["lon"], 6), "suburb": r["suburb"],
|
||||
"_osm": r["osm"]})
|
||||
# ── SUBTLE (John's directive): texture, not takeover ────────────────────────────────────────
|
||||
# The secondhand HEROES are never subsampled — they're the game. If a town's general retail would
|
||||
# drown the strip, seed-subsample the TEXTURE toward C's ~2–3× band (deterministic: rank by
|
||||
# sha256(townKey:osmId), keep the top `cap`) and COUNT the drops like every other drop.
|
||||
heroes = [s for s in shops if s["_osm"] in HERO_CLASSES]
|
||||
texture = [s for s in shops if s["_osm"] not in HERO_CLASSES]
|
||||
cap, dropped = int(round(TEXTURE_CAP * len(heroes))), 0
|
||||
if len(texture) > cap:
|
||||
texture.sort(key=lambda s: hashlib.sha256(f"{key}:{s['id']}".encode()).hexdigest())
|
||||
dropped, texture = len(texture) - cap, texture[:cap]
|
||||
shops = sorted(heroes + texture, key=lambda s: s["id"]) # deterministic emit order
|
||||
for s in shops:
|
||||
s.pop("_osm", None)
|
||||
bb = bbox(center, cfg["span_km"])
|
||||
counts = {"raw": len(els), "shops": len(shops)}
|
||||
counts = {"raw": len(els), "shops": len(shops), "heroes": len(heroes),
|
||||
"texture": len(texture), "textureDropped": dropped}
|
||||
cache = {
|
||||
"schema": "procity-town-cache/2" if roads else "procity-town-cache/1",
|
||||
"key": key, "town": cfg["town"], "source": "osm",
|
||||
@ -257,16 +316,30 @@ def main():
|
||||
kept.append(key)
|
||||
else:
|
||||
dropped.append((key, n, sp))
|
||||
rstr = ""
|
||||
if roads is not None:
|
||||
rk = {}
|
||||
for r in roads:
|
||||
rk[r["kind"]] = rk.get(r["kind"], 0) + 1
|
||||
rstr = f" roads={len(roads)} {dict(sorted(rk.items(), key=lambda x: -x[1]))}"
|
||||
print(f" {'OK ' if ok else 'LOW'} {key:16} shops={n:>3} span={sp:.2f}km {dict(sorted(types.items()))}{rstr}")
|
||||
c = cache["counts"]
|
||||
sub = f" −{c['textureDropped']} subsampled" if c.get("textureDropped") else ""
|
||||
print(f" {'OK ' if ok else 'LOW'} {key:16} shops={n:>3} (heroes {c['heroes']:>2} + texture "
|
||||
f"{c['texture']:>3}{sub}) roads={len(roads or [])!s:>4} {dict(sorted(types.items()))}")
|
||||
print(f"\nBUILT {len(kept)} town cache(s) → web/assets/towns/: {', '.join(kept)}")
|
||||
if dropped:
|
||||
print(f"DROPPED (< 6 shops or span ≥ 5 km): {dropped}")
|
||||
write_index()
|
||||
|
||||
|
||||
def write_index():
|
||||
"""web/assets/towns/index.json (ROUND20 ledger #2) — B's selector derives the town list from this
|
||||
instead of hardcoding REAL_TOWNS. Built from every cache on disk, not just this run."""
|
||||
towns = []
|
||||
for f in sorted(x for x in os.listdir(TOWNS_DIR) if x.endswith(".json") and x != "index.json"):
|
||||
c = json.load(open(os.path.join(TOWNS_DIR, f)))
|
||||
k = c.get("key", f[:-5])
|
||||
towns.append({"key": k, "town": c.get("town", k), "state": TOWNS.get(k, {}).get("state", ""),
|
||||
"shops": len(c.get("shops", [])), "roads": bool(c.get("roads"))})
|
||||
idx = {"schema": "procity-towns-index/1", "generated": datetime.date.today().isoformat(),
|
||||
"license": "ODbL 1.0", "attribution": "© OpenStreetMap contributors", "towns": towns}
|
||||
json.dump(idx, open(os.path.join(TOWNS_DIR, "index.json"), "w"), indent=1)
|
||||
print(f"INDEX → web/assets/towns/index.json ({len(towns)} towns: "
|
||||
f"{', '.join(t['key'] for t in towns)})")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
@ -17,13 +17,30 @@ the "© OpenStreetMap contributors (ODbL)" credit visible.
|
||||
|
||||
## Provenance table
|
||||
|
||||
| cache | town | source | licence | fetched | shops | raw response |
|
||||
Shop counts are post-widening (v4.0-beta); `index.json` is the machine-readable roster.
|
||||
|
||||
| cache | town | source | licence | fetched | shops (heroes+texture) | raw response |
|
||||
|---|---|---|---|---|---|---|
|
||||
| `katoomba_real.json` | Katoomba, NSW | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 20 | `_raw/katoomba_real.overpass.json` |
|
||||
| `newtown_real.json` | Newtown, Sydney NSW | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 18 | `_raw/newtown_real.overpass.json` |
|
||||
| `fremantle_real.json` | Fremantle, WA | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 21 | `_raw/fremantle_real.overpass.json` |
|
||||
| `bendigo_real.json` | Bendigo, VIC | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 9 | `_raw/bendigo_real.overpass.json` |
|
||||
| `castlemaine_real.json` | Castlemaine, VIC | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 6 | `_raw/castlemaine_real.overpass.json` |
|
||||
| `katoomba_real.json` | Katoomba, NSW | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 80 (20+60) | `_raw/katoomba_real.overpass.json` |
|
||||
| `newtown_real.json` | Newtown, Sydney NSW | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 72 (18+54) | `_raw/newtown_real.overpass.json` |
|
||||
| `fremantle_real.json` | Fremantle, WA | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 80 (20+60) | `_raw/fremantle_real.overpass.json` |
|
||||
| `bendigo_real.json` | Bendigo, VIC | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 36 (9+27) | `_raw/bendigo_real.overpass.json` |
|
||||
| `castlemaine_real.json` | Castlemaine, VIC | OSM Overpass (bounded) | ODbL 1.0 | 2026-07-16 | 24 (6+18) | `_raw/castlemaine_real.overpass.json` |
|
||||
|
||||
## The density widening (v4.0-beta, ROUND20 ledger #2)
|
||||
|
||||
The fetch covers the **secondhand heroes** plus the everyday main-street **texture** (bakery/cafe/deli/
|
||||
newsagent/chemist/clothes/hardware/greengrocer/…), mapped to existing registry types per **C's
|
||||
LANE_C_PUB §6** table. Tasteful staples only — no vehicle/fuel, funeral, storage, industrial, or pure
|
||||
services. `cafe` rides `amenity=*`; everything else is `shop=*`. Per John's **subtle** directive the
|
||||
heroes are **never** subsampled and texture is capped at **3× the hero count** (deterministic
|
||||
`sha256(townKey:osmId)` rank); every drop is counted in each cache's `counts.textureDropped`.
|
||||
|
||||
## `index.json` — the towns roster
|
||||
|
||||
`{schema:"procity-towns-index/1", generated, license, attribution, towns:[{key, town, state, shops,
|
||||
roads}]}`. Same ODbL terms as the caches. Consumers (B's selector) derive the town list from this
|
||||
rather than hardcoding.
|
||||
|
||||
## Raw responses (`_raw/`)
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
{
|
||||
"fetchedAt": "2026-07-16",
|
||||
"endpoint": "https://overpass-api.de/api/interpreter",
|
||||
"query": "[out:json][timeout:120];nwr[\"shop\"~\"^(charity|second_hand|music|antiques|books|toys|games|video_games|pawnbroker)$\"][\"name\"](-37.07751,144.20006,-37.05049,144.23394);out center;",
|
||||
"query": "[out:json][timeout:180];(nwr[\"shop\"~\"^(antiques|bag|bakery|books|bookshop|boutique|butcher|charity|cheese|chemist|chocolate|clothes|coffee|confectionery|convenience|cosmetics|dairy|deli|delicatessen|department_store|doityourself|electronics|farm|fashion|florist|furniture|games|garden_centre|general|greengrocer|hardware|homeware|houseware|jewellery|jewelry|kiosk|mobile_phone|music|newsagent|pastry|pawnbroker|perfumery|pharmacy|second_hand|shoes|stationery|supermarket|tea|toys|trade|variety_store|video|video_games|vintage)$\"][\"name\"](-37.07751,144.20006,-37.05049,144.23394);nwr[\"amenity\"~\"^(cafe)$\"][\"name\"](-37.07751,144.20006,-37.05049,144.23394););out center;",
|
||||
"bbox": {
|
||||
"minLat": -37.077513513513516,
|
||||
"minLon": 144.2000649826232,
|
||||
@ -9,6 +9,132 @@
|
||||
"maxLon": 144.23393501737684
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"type": "node",
|
||||
"id": 294087787,
|
||||
"lat": -37.0656116,
|
||||
"lon": 144.2183312,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Pannini"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 2956949396,
|
||||
"lat": -37.0671475,
|
||||
"lon": 144.2178039,
|
||||
"tags": {
|
||||
"addr:housenumber": "54",
|
||||
"addr:street": "Forest Street",
|
||||
"name": "Forest St Discount Traders",
|
||||
"shop": "furniture"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 4168483728,
|
||||
"lat": -37.0562458,
|
||||
"lon": 144.2136412,
|
||||
"tags": {
|
||||
"addr:housenumber": "9",
|
||||
"addr:postcode": "3450",
|
||||
"addr:state": "VIC",
|
||||
"addr:street": "Walker Street",
|
||||
"addr:suburb": "Castlemaine",
|
||||
"amenity": "cafe",
|
||||
"name": "Das Kaffeehaus",
|
||||
"opening_hours": "Mo-Su 08:00-16:00",
|
||||
"outdoor_seating": "yes",
|
||||
"phone": "+61 3 5470 6270",
|
||||
"takeaway": "yes",
|
||||
"toilets": "yes",
|
||||
"website": "https://coffeebasics.com/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 4714218689,
|
||||
"lat": -37.0648632,
|
||||
"lon": 144.2171511,
|
||||
"tags": {
|
||||
"addr:housenumber": "184",
|
||||
"addr:street": "Barker Street",
|
||||
"name": "Hot & Crusty Bakery",
|
||||
"name:en": "Hot & Crusty Bakery",
|
||||
"opening_hours": "Mo-Fr 07:00-17:30; Sa-Su 07:00-15:00",
|
||||
"shop": "bakery"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 5883185477,
|
||||
"lat": -37.0653774,
|
||||
"lon": 144.218071,
|
||||
"tags": {
|
||||
"addr:housenumber": "61",
|
||||
"addr:postcode": "3450",
|
||||
"addr:state": "VIC",
|
||||
"addr:street": "Mostyn Street",
|
||||
"addr:suburb": "Castlemaine",
|
||||
"name": "Chemmart",
|
||||
"shop": "chemist"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 8909393345,
|
||||
"lat": -37.0562934,
|
||||
"lon": 144.2142302,
|
||||
"tags": {
|
||||
"contact:facebook": "https://www.facebook.com/harvestfruitandveg/",
|
||||
"name": "Harvest",
|
||||
"opening_hours": "Th 10:00-17:00; Fr 09:00-17:00; Sa 09:00-13:00; Su-We closed",
|
||||
"phone": "+61 438 606 777",
|
||||
"shop": "greengrocer",
|
||||
"website": "https://castlemaineharvest.com.au/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 8909393346,
|
||||
"lat": -37.0560724,
|
||||
"lon": 144.2136998,
|
||||
"tags": {
|
||||
"addr:housenumber": "9",
|
||||
"addr:street": "Walker Street",
|
||||
"contact:facebook": "https://www.facebook.com/longpaddockcheese/",
|
||||
"name": "Long Paddock Cheese",
|
||||
"phone": "+61 3 5472 3142",
|
||||
"shop": "cheese",
|
||||
"website": "https://longpaddockcheese.com.au/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 8909393347,
|
||||
"lat": -37.0562105,
|
||||
"lon": 144.213966,
|
||||
"tags": {
|
||||
"addr:housenumber": "9",
|
||||
"addr:postcode": "3450",
|
||||
"addr:street": "Walker Street",
|
||||
"contact:instagram": "https://www.instagram.com/sproutbakerycastlemaine/",
|
||||
"name": "Sprout Bakery",
|
||||
"shop": "bakery",
|
||||
"website": "https://millcastlemaine.com.au/portfolio/sprout-bakery/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 9125031531,
|
||||
"lat": -37.0564952,
|
||||
"lon": 144.2185694,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Maine Foodstore"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 9231704552,
|
||||
@ -24,6 +150,72 @@
|
||||
"website": "https://www.vinnies.org.au/shops/view/360"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 9231729701,
|
||||
"lat": -37.0629924,
|
||||
"lon": 144.2164624,
|
||||
"tags": {
|
||||
"addr:housenumber": "31",
|
||||
"addr:street": "Templeton Street",
|
||||
"amenity": "cafe",
|
||||
"name": "Fig Cafe",
|
||||
"phone": "+61 3 5472 5311",
|
||||
"website": "http://figcastlemaine.com.au/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 10050223909,
|
||||
"lat": -37.067116,
|
||||
"lon": 144.2174714,
|
||||
"tags": {
|
||||
"addr:housenumber": "46",
|
||||
"addr:postcode": "3450",
|
||||
"addr:state": "VIC",
|
||||
"addr:street": "Forest Street",
|
||||
"addr:suburb": "Castlemaine",
|
||||
"name": "Johnny Baker Downtown",
|
||||
"opening_hours": "Mo-Su 07:00-15:00",
|
||||
"phone": "+61 3 5470 5695",
|
||||
"shop": "bakery",
|
||||
"website": "https://johnnybaker.com.au/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699200334,
|
||||
"lat": -37.063504,
|
||||
"lon": 144.2179756,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Saint Florian"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699200335,
|
||||
"lat": -37.0633677,
|
||||
"lon": 144.2169181,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"cuisine": "coffee_shop",
|
||||
"name": "Nira",
|
||||
"opening_hours": "We-Sa 08:00-14:00",
|
||||
"outdoor_seating": "yes",
|
||||
"website": "https://www.instagram.com/nira.castlemaine/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699200336,
|
||||
"lat": -37.0629803,
|
||||
"lon": 144.2163297,
|
||||
"tags": {
|
||||
"name": "Green Goes The Grocer",
|
||||
"shop": "greengrocer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699200337,
|
||||
@ -34,6 +226,87 @@
|
||||
"shop": "antiques"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699200341,
|
||||
"lat": -37.0632737,
|
||||
"lon": 144.2158686,
|
||||
"tags": {
|
||||
"name": "The Tea Dispensary",
|
||||
"shop": "tea",
|
||||
"website": "https://theteadispensarycastlemaine.com.au"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699205335,
|
||||
"lat": -37.0637846,
|
||||
"lon": 144.216911,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Origini"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699205343,
|
||||
"lat": -37.0637329,
|
||||
"lon": 144.2169387,
|
||||
"tags": {
|
||||
"name": "Warm Vintage Clothes",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699205344,
|
||||
"lat": -37.0639543,
|
||||
"lon": 144.216863,
|
||||
"tags": {
|
||||
"name": "Beleza School Uniforms",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699208635,
|
||||
"lat": -37.0555701,
|
||||
"lon": 144.2189103,
|
||||
"tags": {
|
||||
"name": "Just Because She Said So",
|
||||
"shop": "shoes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699208636,
|
||||
"lat": -37.0563736,
|
||||
"lon": 144.2185894,
|
||||
"tags": {
|
||||
"name": "Zala Floristry",
|
||||
"shop": "florist"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699208637,
|
||||
"lat": -37.0551631,
|
||||
"lon": 144.2181645,
|
||||
"tags": {
|
||||
"name": "Johnny Baker Uptown",
|
||||
"shop": "bakery"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699208640,
|
||||
"lat": -37.0576933,
|
||||
"lon": 144.2179368,
|
||||
"tags": {
|
||||
"name": "Redgum & Quartz",
|
||||
"shop": "jewelry"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699208641,
|
||||
@ -44,6 +317,107 @@
|
||||
"shop": "books"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699208654,
|
||||
"lat": -37.0575593,
|
||||
"lon": 144.2179531,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Blackbird",
|
||||
"opening_hours": "We-Su 07:00-15:00"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699209595,
|
||||
"lat": -37.0647361,
|
||||
"lon": 144.2178397,
|
||||
"tags": {
|
||||
"name": "Goldfields Games",
|
||||
"shop": "stationery"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699209596,
|
||||
"lat": -37.0648223,
|
||||
"lon": 144.2186911,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Togs Cafe"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699209597,
|
||||
"lat": -37.0647399,
|
||||
"lon": 144.2178817,
|
||||
"tags": {
|
||||
"name": "Castlemaine Office Supplies - COS",
|
||||
"shop": "stationery"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699209601,
|
||||
"lat": -37.0648245,
|
||||
"lon": 144.2187713,
|
||||
"tags": {
|
||||
"name": "mulberrys",
|
||||
"shop": "deli"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699225335,
|
||||
"lat": -37.0641272,
|
||||
"lon": 144.2168128,
|
||||
"tags": {
|
||||
"name": "Mcshanag\u2019s",
|
||||
"shop": "bakery"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699228873,
|
||||
"lat": -37.0655255,
|
||||
"lon": 144.2172776,
|
||||
"tags": {
|
||||
"name": "Aolita",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699228875,
|
||||
"lat": -37.0655044,
|
||||
"lon": 144.2172182,
|
||||
"tags": {
|
||||
"name": "Ivy & Grace",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699230554,
|
||||
"lat": -37.0656365,
|
||||
"lon": 144.2184531,
|
||||
"tags": {
|
||||
"name": "Castlemaine Fresh",
|
||||
"shop": "greengrocer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699233860,
|
||||
"lat": -37.0609871,
|
||||
"lon": 144.2200073,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "The Dove Country Eats"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699237531,
|
||||
@ -54,6 +428,187 @@
|
||||
"shop": "antiques"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699237532,
|
||||
"lat": -37.0730134,
|
||||
"lon": 144.2070605,
|
||||
"tags": {
|
||||
"name": "Cliffords Quality Cuts",
|
||||
"shop": "butcher"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699271590,
|
||||
"lat": -37.0515551,
|
||||
"lon": 144.2213327,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Firebean Coffee"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699277526,
|
||||
"lat": -37.0562996,
|
||||
"lon": 144.2139999,
|
||||
"tags": {
|
||||
"name": "Oakwood Smallgoods Co.",
|
||||
"shop": "deli"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11699277527,
|
||||
"lat": -37.0560376,
|
||||
"lon": 144.2137053,
|
||||
"tags": {
|
||||
"addr:housenumber": "9",
|
||||
"addr:street": "Walker Street",
|
||||
"name": "Cabosse & Feve Chocolates",
|
||||
"shop": "chocolate",
|
||||
"website": "https://www.cabosseandfeve.com.au/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11715203318,
|
||||
"lat": -37.0697474,
|
||||
"lon": 144.2133853,
|
||||
"tags": {
|
||||
"clothes": "workwear",
|
||||
"name": "Hip Pocket",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735362964,
|
||||
"lat": -37.0657,
|
||||
"lon": 144.2189529,
|
||||
"tags": {
|
||||
"name": "Legion Office Works",
|
||||
"shop": "stationery"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735362965,
|
||||
"lat": -37.06572,
|
||||
"lon": 144.2191432,
|
||||
"tags": {
|
||||
"name": "JML Jewellers",
|
||||
"shop": "jewelry"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735362966,
|
||||
"lat": -37.0656918,
|
||||
"lon": 144.2189044,
|
||||
"tags": {
|
||||
"addr:housenumber": "87",
|
||||
"addr:street": "Mostyn Street",
|
||||
"name": "Beehave",
|
||||
"shop": "shoes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735362967,
|
||||
"lat": -37.0656219,
|
||||
"lon": 144.218376,
|
||||
"tags": {
|
||||
"name": "D\u00e9sa",
|
||||
"shop": "shoes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383822,
|
||||
"lat": -37.0669274,
|
||||
"lon": 144.2194209,
|
||||
"tags": {
|
||||
"addr:housenumber": "12",
|
||||
"addr:street": "Hargraves Street",
|
||||
"name": "Mutual Muse",
|
||||
"shop": "clothes",
|
||||
"website": "https://www.mutualmuse.net/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383824,
|
||||
"lat": -37.0661069,
|
||||
"lon": 144.2196811,
|
||||
"tags": {
|
||||
"name": "RIKE Design",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383825,
|
||||
"lat": -37.0667708,
|
||||
"lon": 144.2194268,
|
||||
"tags": {
|
||||
"name": "Little General Kids",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383826,
|
||||
"lat": -37.0661345,
|
||||
"lon": 144.2199456,
|
||||
"tags": {
|
||||
"name": "Shibby Store",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383827,
|
||||
"lat": -37.0668429,
|
||||
"lon": 144.2194282,
|
||||
"tags": {
|
||||
"addr:housenumber": "14",
|
||||
"addr:street": "Hargraves Street",
|
||||
"amenity": "cafe",
|
||||
"name": "Tortoise Espresso"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383834,
|
||||
"lat": -37.0661462,
|
||||
"lon": 144.2200522,
|
||||
"tags": {
|
||||
"name": "Miss Maisie",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383837,
|
||||
"lat": -37.0666799,
|
||||
"lon": 144.2194393,
|
||||
"tags": {
|
||||
"name": "Oni Street Wear",
|
||||
"shop": "clothes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11735383839,
|
||||
"lat": -37.0661674,
|
||||
"lon": 144.2202264,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "SAFFS Cafe"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11760538035,
|
||||
@ -72,6 +627,138 @@
|
||||
"website": "https://www.salvosstores.com.au/stores/vic/3450-castlemaine-5317"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 11934078464,
|
||||
"lat": -37.062982,
|
||||
"lon": 144.2164808,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"name": "Lazy Bones"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 12542955304,
|
||||
"lat": -37.0662172,
|
||||
"lon": 144.218827,
|
||||
"tags": {
|
||||
"addr:housenumber": "50",
|
||||
"addr:postcode": "3450",
|
||||
"addr:street": "Mostyn Street",
|
||||
"addr:unit": "5",
|
||||
"branch": "Castlemaine",
|
||||
"brand": "Bakers Delight",
|
||||
"brand:wikidata": "Q4849261",
|
||||
"name": "Bakers Delight",
|
||||
"opening_hours": "Mo-Su 07:30-20:00",
|
||||
"phone": "+61 3 5470 6073",
|
||||
"shop": "bakery",
|
||||
"website": "http://Bakersdelight.com.au"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 12740901493,
|
||||
"lat": -37.0566616,
|
||||
"lon": 144.2146204,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"contact:instagram": "https://www.instagram.com/frankieatthemill/",
|
||||
"name": "Frankie Espresso",
|
||||
"note": "Cafe is in a container in front of the building",
|
||||
"takeaway": "only"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 12740975418,
|
||||
"lat": -37.0568574,
|
||||
"lon": 144.2141443,
|
||||
"tags": {
|
||||
"name": "Hand Picked Floristry",
|
||||
"note": "Unit 78",
|
||||
"shop": "florist",
|
||||
"website": "https://www.handpickedfloristry.com/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "node",
|
||||
"id": 13954997201,
|
||||
"lat": -37.0702085,
|
||||
"lon": 144.2115086,
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"check_date": "2026-06-21",
|
||||
"name": "Aitken\u2018s Corner"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 26808662,
|
||||
"center": {
|
||||
"lat": -37.0664479,
|
||||
"lon": 144.2186219
|
||||
},
|
||||
"nodes": [
|
||||
294089047,
|
||||
8768419613,
|
||||
8768419614,
|
||||
8768419615,
|
||||
6665030737,
|
||||
1347583493,
|
||||
294089048,
|
||||
1347583492,
|
||||
1347583494,
|
||||
1347583495,
|
||||
294089049,
|
||||
294089050,
|
||||
8768419611,
|
||||
8768419612,
|
||||
7836396117,
|
||||
294089047
|
||||
],
|
||||
"tags": {
|
||||
"addr:postcode": "3450",
|
||||
"addr:state": "VIC",
|
||||
"addr:suburb": "Castlemaine",
|
||||
"branch": "Castlemaine",
|
||||
"brand": "IGA",
|
||||
"brand:wikidata": "Q5970945",
|
||||
"building": "yes",
|
||||
"name": "Maxi IGA",
|
||||
"opening_hours": "Mo-Su 07:00-21:00",
|
||||
"operator": "IGA",
|
||||
"phone": "+61 3 5472 2477",
|
||||
"shop": "supermarket",
|
||||
"website": "https://www.iga.com.au/",
|
||||
"wheelchair": "yes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 41889132,
|
||||
"center": {
|
||||
"lat": -37.0629808,
|
||||
"lon": 144.2169327
|
||||
},
|
||||
"nodes": [
|
||||
518274906,
|
||||
518274907,
|
||||
2803274456,
|
||||
518274909,
|
||||
518274910,
|
||||
518274906
|
||||
],
|
||||
"tags": {
|
||||
"brand": "IGA",
|
||||
"brand:wikidata": "Q5970945",
|
||||
"brand:wikipedia": "en:IGA (Australian supermarket group)",
|
||||
"building": "yes",
|
||||
"name": "IGA",
|
||||
"shop": "supermarket"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 315282080,
|
||||
@ -94,6 +781,136 @@
|
||||
"shop": "books",
|
||||
"wheelchair": "limited"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 315282081,
|
||||
"center": {
|
||||
"lat": -37.0657523,
|
||||
"lon": 144.2198063
|
||||
},
|
||||
"nodes": [
|
||||
3213928216,
|
||||
3213928217,
|
||||
3213928218,
|
||||
3213928213,
|
||||
3213928216
|
||||
],
|
||||
"tags": {
|
||||
"amenity": "cafe",
|
||||
"building": "yes",
|
||||
"name": "Gaia's Goodness",
|
||||
"wheelchair": "yes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 315282082,
|
||||
"center": {
|
||||
"lat": -37.0657268,
|
||||
"lon": 144.2199002
|
||||
},
|
||||
"nodes": [
|
||||
3213928218,
|
||||
3213928219,
|
||||
3213928220,
|
||||
3213928221,
|
||||
3213928217,
|
||||
3213928218
|
||||
],
|
||||
"tags": {
|
||||
"building": "yes",
|
||||
"name": "Castlemaine Floristry",
|
||||
"shop": "florist",
|
||||
"wheelchair": "yes"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 446991894,
|
||||
"center": {
|
||||
"lat": -37.0627807,
|
||||
"lon": 144.2176913
|
||||
},
|
||||
"nodes": [
|
||||
4441953702,
|
||||
3213937049,
|
||||
3213937050,
|
||||
518274901,
|
||||
3213937051,
|
||||
3213937052,
|
||||
4441953702
|
||||
],
|
||||
"tags": {
|
||||
"brand": "BP Shop",
|
||||
"brand:wikidata": "Q152057",
|
||||
"brand:wikipedia": "en:BP",
|
||||
"building": "yes",
|
||||
"name": "BP Shop",
|
||||
"shop": "convenience"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 834631308,
|
||||
"center": {
|
||||
"lat": -37.0653266,
|
||||
"lon": 144.2176748
|
||||
},
|
||||
"nodes": [
|
||||
7791187709,
|
||||
7791187710,
|
||||
7791187711,
|
||||
7791187712,
|
||||
7791187713,
|
||||
7791187714,
|
||||
7791187741,
|
||||
7791187715,
|
||||
7791187709
|
||||
],
|
||||
"tags": {
|
||||
"brand": "Kmart",
|
||||
"brand:wikidata": "Q6421682",
|
||||
"brand:wikipedia": "en:Kmart Australia",
|
||||
"building": "yes",
|
||||
"name": "K Hub",
|
||||
"shop": "department_store"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "way",
|
||||
"id": 1387137327,
|
||||
"center": {
|
||||
"lat": -37.0678903,
|
||||
"lon": 144.2223679
|
||||
},
|
||||
"nodes": [
|
||||
12841247956,
|
||||
13639673523,
|
||||
13639673522,
|
||||
12841247957,
|
||||
12841247958,
|
||||
12841247959,
|
||||
13639673521,
|
||||
12841247960,
|
||||
12841247961,
|
||||
12841247962,
|
||||
13639673520,
|
||||
13639673517,
|
||||
13639673518,
|
||||
13639673519,
|
||||
12841247963,
|
||||
12841247956
|
||||
],
|
||||
"tags": {
|
||||
"brand": "Woolworths",
|
||||
"brand:wikidata": "Q3249145",
|
||||
"building": "yes",
|
||||
"name": "Woolworths",
|
||||
"operator": "Woolworths Group",
|
||||
"operator:wikidata": "Q607272",
|
||||
"shop": "supermarket"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -18,11 +18,22 @@
|
||||
"maxLon": 144.30011618044566
|
||||
},
|
||||
"counts": {
|
||||
"raw": 9,
|
||||
"shops": 9,
|
||||
"raw": 120,
|
||||
"shops": 36,
|
||||
"heroes": 9,
|
||||
"texture": 27,
|
||||
"textureDropped": 81,
|
||||
"roads": 1552
|
||||
},
|
||||
"shops": [
|
||||
{
|
||||
"id": 51469190,
|
||||
"name": "Woolworths",
|
||||
"type": "dept",
|
||||
"lat": -36.766914,
|
||||
"lon": 144.265197,
|
||||
"suburb": "Ironbark"
|
||||
},
|
||||
{
|
||||
"id": 329659785,
|
||||
"name": "Slave-ohs",
|
||||
@ -31,6 +42,22 @@
|
||||
"lon": 144.262936,
|
||||
"suburb": "Ironbark"
|
||||
},
|
||||
{
|
||||
"id": 470420143,
|
||||
"name": "Cafe 307",
|
||||
"type": "milkbar",
|
||||
"lat": -36.771517,
|
||||
"lon": 144.262027,
|
||||
"suburb": "Ironbark"
|
||||
},
|
||||
{
|
||||
"id": 826091288,
|
||||
"name": "The Old Green Bean",
|
||||
"type": "milkbar",
|
||||
"lat": -36.75875,
|
||||
"lon": 144.284821,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 827550052,
|
||||
"name": "Sinnies",
|
||||
@ -39,6 +66,70 @@
|
||||
"lon": 144.286017,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 829687117,
|
||||
"name": "Asian Foods Emporium Grocery",
|
||||
"type": "dept",
|
||||
"lat": -36.760588,
|
||||
"lon": 144.283087,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 835692264,
|
||||
"name": "The Subtle Eye",
|
||||
"type": "milkbar",
|
||||
"lat": -36.757863,
|
||||
"lon": 144.28179,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 837682665,
|
||||
"name": "Everbean Caf\u00e9",
|
||||
"type": "milkbar",
|
||||
"lat": -36.76049,
|
||||
"lon": 144.281758,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 837704574,
|
||||
"name": "Noone Imagewear",
|
||||
"type": "dept",
|
||||
"lat": -36.761008,
|
||||
"lon": 144.281254,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 838398536,
|
||||
"name": "JM Leech Jewellers",
|
||||
"type": "dept",
|
||||
"lat": -36.759482,
|
||||
"lon": 144.280567,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 838398546,
|
||||
"name": "shop 12 boutique",
|
||||
"type": "dept",
|
||||
"lat": -36.75916,
|
||||
"lon": 144.280448,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 838844008,
|
||||
"name": "Virtu",
|
||||
"type": "dept",
|
||||
"lat": -36.75983,
|
||||
"lon": 144.281265,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 1289247489,
|
||||
"name": "Bendigo Original Pie Shop",
|
||||
"type": "milkbar",
|
||||
"lat": -36.759358,
|
||||
"lon": 144.280841,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 1443367904,
|
||||
"name": "Book Now",
|
||||
@ -47,6 +138,38 @@
|
||||
"lon": 144.282307,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 4952033541,
|
||||
"name": "Favourite Flavours",
|
||||
"type": "milkbar",
|
||||
"lat": -36.749749,
|
||||
"lon": 144.290565,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7756585874,
|
||||
"name": "APM employment services",
|
||||
"type": "dept",
|
||||
"lat": -36.759976,
|
||||
"lon": 144.282313,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7816837806,
|
||||
"name": "Lollies2Go",
|
||||
"type": "milkbar",
|
||||
"lat": -36.76132,
|
||||
"lon": 144.282124,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7816868914,
|
||||
"name": "The Erindale Farm Butchery",
|
||||
"type": "milkbar",
|
||||
"lat": -36.761341,
|
||||
"lon": 144.282266,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7816868915,
|
||||
"name": "Red Floss Shop",
|
||||
@ -55,6 +178,54 @@
|
||||
"lon": 144.282046,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7816868916,
|
||||
"name": "Bakers Delight",
|
||||
"type": "milkbar",
|
||||
"lat": -36.761241,
|
||||
"lon": 144.282231,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7821369727,
|
||||
"name": "The Flower Spot Bendigo",
|
||||
"type": "stall",
|
||||
"lat": -36.760911,
|
||||
"lon": 144.281603,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7828645967,
|
||||
"name": "Bakery Express Caffe",
|
||||
"type": "milkbar",
|
||||
"lat": -36.760079,
|
||||
"lon": 144.281709,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7828645972,
|
||||
"name": "Stearns Showcase Jewellers",
|
||||
"type": "dept",
|
||||
"lat": -36.760227,
|
||||
"lon": 144.280907,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 7828645974,
|
||||
"name": "Gaijin Eatery",
|
||||
"type": "milkbar",
|
||||
"lat": -36.760424,
|
||||
"lon": 144.281128,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8040964387,
|
||||
"name": "The Plaza Lady Salon",
|
||||
"type": "dept",
|
||||
"lat": -36.76003,
|
||||
"lon": 144.278691,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8040967386,
|
||||
"name": "Dymocks",
|
||||
@ -71,6 +242,30 @@
|
||||
"lon": 144.276186,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8089526650,
|
||||
"name": "Magnolia Lane",
|
||||
"type": "milkbar",
|
||||
"lat": -36.75956,
|
||||
"lon": 144.278963,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8090307856,
|
||||
"name": "Bendigo Hat Shop",
|
||||
"type": "dept",
|
||||
"lat": -36.760607,
|
||||
"lon": 144.276984,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8090344402,
|
||||
"name": "Zenbu",
|
||||
"type": "dept",
|
||||
"lat": -36.759938,
|
||||
"lon": 144.27843,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8225415317,
|
||||
"name": "Bat City Music",
|
||||
@ -79,6 +274,14 @@
|
||||
"lon": 144.277469,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8649203078,
|
||||
"name": "Jay Jays",
|
||||
"type": "dept",
|
||||
"lat": -36.765669,
|
||||
"lon": 144.280466,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8649203082,
|
||||
"name": "EB Games",
|
||||
@ -87,6 +290,14 @@
|
||||
"lon": 144.280806,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 8649203084,
|
||||
"name": "The Body Shop",
|
||||
"type": "milkbar",
|
||||
"lat": -36.76569,
|
||||
"lon": 144.280177,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 12421060314,
|
||||
"name": "Cashtheists",
|
||||
@ -94,6 +305,14 @@
|
||||
"lat": -36.759374,
|
||||
"lon": 144.27927,
|
||||
"suburb": "Bendigo"
|
||||
},
|
||||
{
|
||||
"id": 13646608627,
|
||||
"name": "Reddy Express",
|
||||
"type": "milkbar",
|
||||
"lat": -36.756946,
|
||||
"lon": 144.292295,
|
||||
"suburb": "Bendigo"
|
||||
}
|
||||
],
|
||||
"roads": [
|
||||
|
||||
@ -18,18 +18,77 @@
|
||||
"maxLon": 144.23393501737684
|
||||
},
|
||||
"counts": {
|
||||
"raw": 6,
|
||||
"shops": 6,
|
||||
"raw": 67,
|
||||
"shops": 24,
|
||||
"heroes": 6,
|
||||
"texture": 18,
|
||||
"textureDropped": 43,
|
||||
"roads": 397
|
||||
},
|
||||
"shops": [
|
||||
{
|
||||
"id": 26808662,
|
||||
"name": "Maxi IGA",
|
||||
"type": "dept",
|
||||
"lat": -37.066448,
|
||||
"lon": 144.218622,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 41889132,
|
||||
"name": "IGA",
|
||||
"type": "dept",
|
||||
"lat": -37.062981,
|
||||
"lon": 144.216933,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 315282080,
|
||||
"name": "Stonemans Bookroom",
|
||||
"type": "book",
|
||||
"lat": -37.065704,
|
||||
"lon": 144.219673,
|
||||
"suburb": ""
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 315282082,
|
||||
"name": "Castlemaine Floristry",
|
||||
"type": "stall",
|
||||
"lat": -37.065727,
|
||||
"lon": 144.2199,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 446991894,
|
||||
"name": "BP Shop",
|
||||
"type": "milkbar",
|
||||
"lat": -37.062781,
|
||||
"lon": 144.217691,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 834631308,
|
||||
"name": "K Hub",
|
||||
"type": "dept",
|
||||
"lat": -37.065327,
|
||||
"lon": 144.217675,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 4714218689,
|
||||
"name": "Hot & Crusty Bakery",
|
||||
"type": "milkbar",
|
||||
"lat": -37.064863,
|
||||
"lon": 144.217151,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 8909393346,
|
||||
"name": "Long Paddock Cheese",
|
||||
"type": "milkbar",
|
||||
"lat": -37.056072,
|
||||
"lon": 144.2137,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 9231704552,
|
||||
@ -37,7 +96,7 @@
|
||||
"type": "opshop",
|
||||
"lat": -37.062363,
|
||||
"lon": 144.217526,
|
||||
"suburb": ""
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699200337,
|
||||
@ -45,7 +104,15 @@
|
||||
"type": "opshop",
|
||||
"lat": -37.063201,
|
||||
"lon": 144.218163,
|
||||
"suburb": ""
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699208635,
|
||||
"name": "Just Because She Said So",
|
||||
"type": "dept",
|
||||
"lat": -37.05557,
|
||||
"lon": 144.21891,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699208641,
|
||||
@ -53,7 +120,31 @@
|
||||
"type": "book",
|
||||
"lat": -37.061647,
|
||||
"lon": 144.217247,
|
||||
"suburb": ""
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699225335,
|
||||
"name": "Mcshanag\u2019s",
|
||||
"type": "milkbar",
|
||||
"lat": -37.064127,
|
||||
"lon": 144.216813,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699230554,
|
||||
"name": "Castlemaine Fresh",
|
||||
"type": "stall",
|
||||
"lat": -37.065636,
|
||||
"lon": 144.218453,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699233860,
|
||||
"name": "The Dove Country Eats",
|
||||
"type": "milkbar",
|
||||
"lat": -37.060987,
|
||||
"lon": 144.220007,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699237531,
|
||||
@ -61,7 +152,39 @@
|
||||
"type": "opshop",
|
||||
"lat": -37.072912,
|
||||
"lon": 144.206493,
|
||||
"suburb": ""
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11699277526,
|
||||
"name": "Oakwood Smallgoods Co.",
|
||||
"type": "milkbar",
|
||||
"lat": -37.0563,
|
||||
"lon": 144.214,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11735383822,
|
||||
"name": "Mutual Muse",
|
||||
"type": "dept",
|
||||
"lat": -37.066927,
|
||||
"lon": 144.219421,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11735383825,
|
||||
"name": "Little General Kids",
|
||||
"type": "dept",
|
||||
"lat": -37.066771,
|
||||
"lon": 144.219427,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11735383839,
|
||||
"name": "SAFFS Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -37.066167,
|
||||
"lon": 144.220226,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11760538035,
|
||||
@ -69,7 +192,31 @@
|
||||
"type": "opshop",
|
||||
"lat": -37.067129,
|
||||
"lon": 144.217625,
|
||||
"suburb": ""
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 11934078464,
|
||||
"name": "Lazy Bones",
|
||||
"type": "milkbar",
|
||||
"lat": -37.062982,
|
||||
"lon": 144.216481,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 12740901493,
|
||||
"name": "Frankie Espresso",
|
||||
"type": "milkbar",
|
||||
"lat": -37.056662,
|
||||
"lon": 144.21462,
|
||||
"suburb": "Castlemaine"
|
||||
},
|
||||
{
|
||||
"id": 12740975418,
|
||||
"name": "Hand Picked Floristry",
|
||||
"type": "stall",
|
||||
"lat": -37.056857,
|
||||
"lon": 144.214144,
|
||||
"suburb": "Castlemaine"
|
||||
}
|
||||
],
|
||||
"roads": [
|
||||
|
||||
@ -18,8 +18,11 @@
|
||||
"maxLon": 115.76181856816406
|
||||
},
|
||||
"counts": {
|
||||
"raw": 21,
|
||||
"shops": 21,
|
||||
"raw": 163,
|
||||
"shops": 80,
|
||||
"heroes": 20,
|
||||
"texture": 60,
|
||||
"textureDropped": 81,
|
||||
"roads": 622
|
||||
},
|
||||
"shops": [
|
||||
@ -31,6 +34,14 @@
|
||||
"lon": 115.747749,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 140484887,
|
||||
"name": "Lawley's Cafe & Bakery",
|
||||
"type": "milkbar",
|
||||
"lat": -32.059502,
|
||||
"lon": 115.751724,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 310008675,
|
||||
"name": "Slave-ohs",
|
||||
@ -39,6 +50,22 @@
|
||||
"lon": 115.74845,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 322574866,
|
||||
"name": "Gallatis'",
|
||||
"type": "milkbar",
|
||||
"lat": -32.060257,
|
||||
"lon": 115.752796,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 341104307,
|
||||
"name": "Officeworks",
|
||||
"type": "milkbar",
|
||||
"lat": -32.045158,
|
||||
"lon": 115.752556,
|
||||
"suburb": "East Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 592578660,
|
||||
"name": "Elizabeth's Warehouse",
|
||||
@ -47,6 +74,30 @@
|
||||
"lon": 115.750901,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 600753458,
|
||||
"name": "kazoomies",
|
||||
"type": "milkbar",
|
||||
"lat": -32.053388,
|
||||
"lon": 115.742238,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 600826931,
|
||||
"name": "San Churro",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055751,
|
||||
"lon": 115.747406,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 662689900,
|
||||
"name": "Gino's",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055597,
|
||||
"lon": 115.747122,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 976912099,
|
||||
"name": "Toyworld",
|
||||
@ -55,6 +106,46 @@
|
||||
"lon": 115.749569,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 1029226779,
|
||||
"name": "D'Angelo Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -32.053672,
|
||||
"lon": 115.749625,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 1112796032,
|
||||
"name": "Plated",
|
||||
"type": "milkbar",
|
||||
"lat": -32.047705,
|
||||
"lon": 115.754197,
|
||||
"suburb": "East Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 1176518483,
|
||||
"name": "Whistle Stop",
|
||||
"type": "milkbar",
|
||||
"lat": -32.052132,
|
||||
"lon": 115.745259,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 2535026143,
|
||||
"name": "Ethos Deli & Dining Room",
|
||||
"type": "milkbar",
|
||||
"lat": -32.043992,
|
||||
"lon": 115.761648,
|
||||
"suburb": "East Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 2774072502,
|
||||
"name": "Freo Merchant",
|
||||
"type": "milkbar",
|
||||
"lat": -32.05319,
|
||||
"lon": 115.741799,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 3144618368,
|
||||
"name": "Elizabeth's",
|
||||
@ -63,6 +154,30 @@
|
||||
"lon": 115.747192,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 3329420423,
|
||||
"name": "Leisure Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -32.047955,
|
||||
"lon": 115.75238,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4364304694,
|
||||
"name": "Two Fat Wombats",
|
||||
"type": "milkbar",
|
||||
"lat": -32.053674,
|
||||
"lon": 115.74582,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4601037690,
|
||||
"name": "Blue Lotus",
|
||||
"type": "milkbar",
|
||||
"lat": -32.062758,
|
||||
"lon": 115.757131,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4601037692,
|
||||
"name": "New Edition Bookshop",
|
||||
@ -71,6 +186,30 @@
|
||||
"lon": 115.744283,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4601038092,
|
||||
"name": "Cafe on Hampton",
|
||||
"type": "milkbar",
|
||||
"lat": -32.06219,
|
||||
"lon": 115.756841,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4601049291,
|
||||
"name": "Denim/Store",
|
||||
"type": "dept",
|
||||
"lat": -32.054757,
|
||||
"lon": 115.745966,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4601057690,
|
||||
"name": "Hush",
|
||||
"type": "milkbar",
|
||||
"lat": -32.054802,
|
||||
"lon": 115.745114,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4601057991,
|
||||
"name": "Bill Campbell Books",
|
||||
@ -79,6 +218,14 @@
|
||||
"lon": 115.744405,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 4637114093,
|
||||
"name": "The Prestige Italian Caf\u00e8",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055089,
|
||||
"lon": 115.742432,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5026468221,
|
||||
"name": "Mothballs Vintage",
|
||||
@ -87,6 +234,62 @@
|
||||
"lon": 115.747843,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5179250521,
|
||||
"name": "Fremantle Convenience Store",
|
||||
"type": "milkbar",
|
||||
"lat": -32.053175,
|
||||
"lon": 115.747879,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5219523076,
|
||||
"name": "Abhi's Bread",
|
||||
"type": "milkbar",
|
||||
"lat": -32.065622,
|
||||
"lon": 115.752583,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5321919673,
|
||||
"name": "Gorman",
|
||||
"type": "dept",
|
||||
"lat": -32.054756,
|
||||
"lon": 115.746702,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5321920048,
|
||||
"name": "Terrace Men",
|
||||
"type": "dept",
|
||||
"lat": -32.054894,
|
||||
"lon": 115.746462,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5321921316,
|
||||
"name": "Culley's",
|
||||
"type": "milkbar",
|
||||
"lat": -32.054222,
|
||||
"lon": 115.746884,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5321921457,
|
||||
"name": "Breglia Piccolo's Lunch Bar",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055217,
|
||||
"lon": 115.743815,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5883083585,
|
||||
"name": "Best Wishes",
|
||||
"type": "milkbar",
|
||||
"lat": -32.053391,
|
||||
"lon": 115.746519,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 5885985088,
|
||||
"name": "Cashtheists",
|
||||
@ -95,6 +298,30 @@
|
||||
"lon": 115.748787,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 6933734247,
|
||||
"name": "Kerfuffle",
|
||||
"type": "milkbar",
|
||||
"lat": -32.064294,
|
||||
"lon": 115.752551,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 6944071310,
|
||||
"name": "Vanilla Bean",
|
||||
"type": "milkbar",
|
||||
"lat": -32.059234,
|
||||
"lon": 115.750989,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 7196223177,
|
||||
"name": "Broody Hen",
|
||||
"type": "milkbar",
|
||||
"lat": -32.046988,
|
||||
"lon": 115.752531,
|
||||
"suburb": "East Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 8153813968,
|
||||
"name": "The Record Finder",
|
||||
@ -103,6 +330,38 @@
|
||||
"lon": 115.744369,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 8299402082,
|
||||
"name": "True Brew",
|
||||
"type": "milkbar",
|
||||
"lat": -32.056482,
|
||||
"lon": 115.749276,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 8808000382,
|
||||
"name": "No Escape Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -32.054938,
|
||||
"lon": 115.752908,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 8889079808,
|
||||
"name": "Little Sister",
|
||||
"type": "milkbar",
|
||||
"lat": -32.053654,
|
||||
"lon": 115.745975,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9039407645,
|
||||
"name": "Freo Mart",
|
||||
"type": "milkbar",
|
||||
"lat": -32.056461,
|
||||
"lon": 115.749232,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9156620320,
|
||||
"name": "Shave the Children",
|
||||
@ -111,6 +370,30 @@
|
||||
"lon": 115.752589,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9156728321,
|
||||
"name": "Bodkin's Bootery",
|
||||
"type": "dept",
|
||||
"lat": -32.054769,
|
||||
"lon": 115.745231,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9717067495,
|
||||
"name": "IGA",
|
||||
"type": "dept",
|
||||
"lat": -32.054498,
|
||||
"lon": 115.749252,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9793980117,
|
||||
"name": "Little French Nest",
|
||||
"type": "milkbar",
|
||||
"lat": -32.052161,
|
||||
"lon": 115.749173,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9794077228,
|
||||
"name": "Adorn Vintage",
|
||||
@ -127,6 +410,70 @@
|
||||
"lon": 115.744727,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9797581350,
|
||||
"name": "Caffissimo",
|
||||
"type": "milkbar",
|
||||
"lat": -32.054604,
|
||||
"lon": 115.739298,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9843343165,
|
||||
"name": "Unwind on Wray",
|
||||
"type": "milkbar",
|
||||
"lat": -32.059985,
|
||||
"lon": 115.75219,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9843343167,
|
||||
"name": "Kartique Corner",
|
||||
"type": "dept",
|
||||
"lat": -32.059934,
|
||||
"lon": 115.752075,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9843343170,
|
||||
"name": "Bukesh-la",
|
||||
"type": "dept",
|
||||
"lat": -32.059682,
|
||||
"lon": 115.752112,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9878259117,
|
||||
"name": "Somes Newsageny",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055098,
|
||||
"lon": 115.744827,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9878259217,
|
||||
"name": "High on 55",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055118,
|
||||
"lon": 115.744766,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 9947458058,
|
||||
"name": "Elk Fish Robotics",
|
||||
"type": "dept",
|
||||
"lat": -32.059517,
|
||||
"lon": 115.748414,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 10585254715,
|
||||
"name": "Red Floss Shop",
|
||||
"type": "dept",
|
||||
"lat": -32.053363,
|
||||
"lon": 115.749563,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 10585254716,
|
||||
"name": "Sinnies",
|
||||
@ -135,6 +482,30 @@
|
||||
"lon": 115.749669,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 10660056921,
|
||||
"name": "Mi-Life",
|
||||
"type": "dept",
|
||||
"lat": -32.053343,
|
||||
"lon": 115.74655,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 10833576345,
|
||||
"name": "Utopia Fremantle",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055981,
|
||||
"lon": 115.747808,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11323014781,
|
||||
"name": "Wear2",
|
||||
"type": "dept",
|
||||
"lat": -32.054542,
|
||||
"lon": 115.748308,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11323015046,
|
||||
"name": "The Picker Concept",
|
||||
@ -143,6 +514,22 @@
|
||||
"lon": 115.748306,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11323035617,
|
||||
"name": "Surf Dive 'n Ski",
|
||||
"type": "dept",
|
||||
"lat": -32.054122,
|
||||
"lon": 115.74721,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11337000968,
|
||||
"name": "Telstra",
|
||||
"type": "dept",
|
||||
"lat": -32.054429,
|
||||
"lon": 115.747001,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11337031591,
|
||||
"name": "Nifty in Freo",
|
||||
@ -152,11 +539,59 @@
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11337040744,
|
||||
"name": "Red Floss Shop",
|
||||
"type": "opshop",
|
||||
"lat": -32.053937,
|
||||
"lon": 115.74609,
|
||||
"id": 11596694746,
|
||||
"name": "Festal Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -32.054923,
|
||||
"lon": 115.748535,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11730692453,
|
||||
"name": "Floral Army",
|
||||
"type": "stall",
|
||||
"lat": -32.044197,
|
||||
"lon": 115.761144,
|
||||
"suburb": "East Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11831943936,
|
||||
"name": "Amante & Co Coffee",
|
||||
"type": "milkbar",
|
||||
"lat": -32.062452,
|
||||
"lon": 115.752073,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 11890633269,
|
||||
"name": "T.O.P. Coffee and Tea",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055047,
|
||||
"lon": 115.748329,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12096135462,
|
||||
"name": "Fremantle Pharmacy",
|
||||
"type": "milkbar",
|
||||
"lat": -32.054664,
|
||||
"lon": 115.745559,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12096277829,
|
||||
"name": "Three Stories",
|
||||
"type": "dept",
|
||||
"lat": -32.054661,
|
||||
"lon": 115.746332,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12307062505,
|
||||
"name": "Cassia",
|
||||
"type": "milkbar",
|
||||
"lat": -32.055207,
|
||||
"lon": 115.749886,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
@ -167,14 +602,30 @@
|
||||
"lon": 115.749467,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12389475293,
|
||||
"name": "Rustic Spoon",
|
||||
"type": "milkbar",
|
||||
"lat": -32.056402,
|
||||
"lon": 115.746922,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12490289378,
|
||||
"name": "Warhammer",
|
||||
"type": "toy",
|
||||
"type": "video",
|
||||
"lat": -32.052216,
|
||||
"lon": 115.749274,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12522399956,
|
||||
"name": "Fremantle Opals",
|
||||
"type": "dept",
|
||||
"lat": -32.054823,
|
||||
"lon": 115.746447,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 12787392414,
|
||||
"name": "Vintage On High",
|
||||
@ -190,6 +641,30 @@
|
||||
"lat": -32.053366,
|
||||
"lon": 115.747261,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 13064860607,
|
||||
"name": "Il Brutto",
|
||||
"type": "milkbar",
|
||||
"lat": -32.056303,
|
||||
"lon": 115.746115,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 13130252840,
|
||||
"name": "Ladies Auxilliary Kiosk",
|
||||
"type": "milkbar",
|
||||
"lat": -32.058524,
|
||||
"lon": 115.751161,
|
||||
"suburb": "Fremantle"
|
||||
},
|
||||
{
|
||||
"id": 13810284696,
|
||||
"name": "Perth Surf Vintage",
|
||||
"type": "dept",
|
||||
"lat": -32.055218,
|
||||
"lon": 115.748222,
|
||||
"suburb": "Fremantle"
|
||||
}
|
||||
],
|
||||
"roads": [
|
||||
|
||||
43
web/assets/towns/index.json
Normal file
43
web/assets/towns/index.json
Normal file
@ -0,0 +1,43 @@
|
||||
{
|
||||
"schema": "procity-towns-index/1",
|
||||
"generated": "2026-07-16",
|
||||
"license": "ODbL 1.0",
|
||||
"attribution": "\u00a9 OpenStreetMap contributors",
|
||||
"towns": [
|
||||
{
|
||||
"key": "bendigo_real",
|
||||
"town": "Bendigo",
|
||||
"state": "VIC",
|
||||
"shops": 36,
|
||||
"roads": true
|
||||
},
|
||||
{
|
||||
"key": "castlemaine_real",
|
||||
"town": "Castlemaine",
|
||||
"state": "VIC",
|
||||
"shops": 24,
|
||||
"roads": true
|
||||
},
|
||||
{
|
||||
"key": "fremantle_real",
|
||||
"town": "Fremantle",
|
||||
"state": "WA",
|
||||
"shops": 80,
|
||||
"roads": true
|
||||
},
|
||||
{
|
||||
"key": "katoomba_real",
|
||||
"town": "Katoomba",
|
||||
"state": "NSW",
|
||||
"shops": 80,
|
||||
"roads": true
|
||||
},
|
||||
{
|
||||
"key": "newtown_real",
|
||||
"town": "Newtown",
|
||||
"state": "NSW",
|
||||
"shops": 72,
|
||||
"roads": true
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -18,11 +18,54 @@
|
||||
"maxLon": 150.3282458418835
|
||||
},
|
||||
"counts": {
|
||||
"raw": 20,
|
||||
"shops": 20,
|
||||
"raw": 85,
|
||||
"shops": 80,
|
||||
"heroes": 20,
|
||||
"texture": 60,
|
||||
"textureDropped": 4,
|
||||
"roads": 484
|
||||
},
|
||||
"shops": [
|
||||
{
|
||||
"id": 20973534,
|
||||
"name": "The Hatters Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.71685,
|
||||
"lon": 150.310897,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 20973744,
|
||||
"name": "Blue Mountains Chocolate Company",
|
||||
"type": "milkbar",
|
||||
"lat": -33.727787,
|
||||
"lon": 150.310686,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 220588486,
|
||||
"name": "K Hub",
|
||||
"type": "dept",
|
||||
"lat": -33.715253,
|
||||
"lon": 150.310046,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 397769505,
|
||||
"name": "EG Australia",
|
||||
"type": "milkbar",
|
||||
"lat": -33.706992,
|
||||
"lon": 150.306813,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 615402710,
|
||||
"name": "Bunnings Warehouse",
|
||||
"type": "dept",
|
||||
"lat": -33.712464,
|
||||
"lon": 150.320412,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 753467867,
|
||||
"name": "Blue Mountains Cancer Help Op Shop",
|
||||
@ -31,6 +74,78 @@
|
||||
"lon": 150.310861,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 761089046,
|
||||
"name": "Bunnings Garden Center",
|
||||
"type": "stall",
|
||||
"lat": -33.712763,
|
||||
"lon": 150.320644,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 802666966,
|
||||
"name": "Savoy Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.712834,
|
||||
"lon": 150.311983,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 1369162051,
|
||||
"name": "Coles",
|
||||
"type": "dept",
|
||||
"lat": -33.713861,
|
||||
"lon": 150.310503,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 1468118824,
|
||||
"name": "Aldi",
|
||||
"type": "dept",
|
||||
"lat": -33.717427,
|
||||
"lon": 150.310496,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 2381632365,
|
||||
"name": "Blue Mountains Food Co-op",
|
||||
"type": "dept",
|
||||
"lat": -33.714245,
|
||||
"lon": 150.310943,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 2459170313,
|
||||
"name": "Mitre 10",
|
||||
"type": "dept",
|
||||
"lat": -33.710384,
|
||||
"lon": 150.319933,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 2763942902,
|
||||
"name": "Woolworths",
|
||||
"type": "dept",
|
||||
"lat": -33.716617,
|
||||
"lon": 150.309785,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 2763958073,
|
||||
"name": "The Handy Store",
|
||||
"type": "milkbar",
|
||||
"lat": -33.705791,
|
||||
"lon": 150.312268,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 3525171098,
|
||||
"name": "The Yellow Deli",
|
||||
"type": "milkbar",
|
||||
"lat": -33.717377,
|
||||
"lon": 150.31108,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 4047416904,
|
||||
"name": "Tanglecare",
|
||||
@ -63,6 +178,14 @@
|
||||
"lon": 150.309931,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 4047416912,
|
||||
"name": "Todarello's",
|
||||
"type": "stall",
|
||||
"lat": -33.710196,
|
||||
"lon": 150.309242,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 4047416913,
|
||||
"name": "Sinnies",
|
||||
@ -71,6 +194,22 @@
|
||||
"lon": 150.311782,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 4861436783,
|
||||
"name": "Big W",
|
||||
"type": "dept",
|
||||
"lat": -33.715823,
|
||||
"lon": 150.309926,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 4957656365,
|
||||
"name": "Jaycar",
|
||||
"type": "dept",
|
||||
"lat": -33.717449,
|
||||
"lon": 150.310738,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 4958417278,
|
||||
"name": "Tanglecare Op Shops",
|
||||
@ -95,6 +234,62 @@
|
||||
"lon": 150.311403,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 5237464916,
|
||||
"name": "Xpresso",
|
||||
"type": "milkbar",
|
||||
"lat": -33.712201,
|
||||
"lon": 150.31176,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 5237464921,
|
||||
"name": "Clarendon Restaurant",
|
||||
"type": "milkbar",
|
||||
"lat": -33.718026,
|
||||
"lon": 150.312594,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 5237464923,
|
||||
"name": "Smokey Bundits",
|
||||
"type": "milkbar",
|
||||
"lat": -33.711901,
|
||||
"lon": 150.310436,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6259524189,
|
||||
"name": "Cafe Lurline",
|
||||
"type": "milkbar",
|
||||
"lat": -33.724917,
|
||||
"lon": 150.310787,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6340856985,
|
||||
"name": "Made with Love Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.713029,
|
||||
"lon": 150.311952,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6417269322,
|
||||
"name": "Pomegranate Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.713511,
|
||||
"lon": 150.311538,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6417269860,
|
||||
"name": "Hominy Bakery",
|
||||
"type": "milkbar",
|
||||
"lat": -33.716472,
|
||||
"lon": 150.310974,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938379064,
|
||||
"name": "Katoomba Antique Centre",
|
||||
@ -103,6 +298,14 @@
|
||||
"lon": 150.310654,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938379066,
|
||||
"name": "Pearce Furniture & Bedding",
|
||||
"type": "dept",
|
||||
"lat": -33.712288,
|
||||
"lon": 150.310753,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938414604,
|
||||
"name": "Slave-ohs",
|
||||
@ -119,6 +322,110 @@
|
||||
"lon": 150.31127,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593142,
|
||||
"name": "True to the Bean",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715282,
|
||||
"lon": 150.311217,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593144,
|
||||
"name": "Can Blue",
|
||||
"type": "milkbar",
|
||||
"lat": -33.71536,
|
||||
"lon": 150.311202,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593151,
|
||||
"name": "8 Things",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715508,
|
||||
"lon": 150.311171,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593155,
|
||||
"name": "Katoomba French Hot Bread",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715557,
|
||||
"lon": 150.311159,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593159,
|
||||
"name": "Katoomba Fine Flowers",
|
||||
"type": "stall",
|
||||
"lat": -33.715469,
|
||||
"lon": 150.31118,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593162,
|
||||
"name": "Blue Mountains Buttery",
|
||||
"type": "milkbar",
|
||||
"lat": -33.71583,
|
||||
"lon": 150.311109,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593166,
|
||||
"name": "The Elephant Bean",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715925,
|
||||
"lon": 150.311082,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938593174,
|
||||
"name": "Kent + Lane",
|
||||
"type": "dept",
|
||||
"lat": -33.71653,
|
||||
"lon": 150.31096,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938677873,
|
||||
"name": "Fish & Fowl",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715274,
|
||||
"lon": 150.310735,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938921422,
|
||||
"name": "LuJo By Design",
|
||||
"type": "dept",
|
||||
"lat": -33.716657,
|
||||
"lon": 150.311224,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938921424,
|
||||
"name": "Katoomba Workwear",
|
||||
"type": "dept",
|
||||
"lat": -33.716397,
|
||||
"lon": 150.311281,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938921480,
|
||||
"name": "Black Cockatoo",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715974,
|
||||
"lon": 150.311074,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938921482,
|
||||
"name": "aBrasKadaBras",
|
||||
"type": "dept",
|
||||
"lat": -33.714468,
|
||||
"lon": 150.311655,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 6938921533,
|
||||
"name": "MacArthur's Arcade",
|
||||
@ -135,6 +442,14 @@
|
||||
"lon": 150.311761,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 7012045885,
|
||||
"name": "Mountain Ama Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.716568,
|
||||
"lon": 150.310968,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 7040012373,
|
||||
"name": "Black Antiques",
|
||||
@ -143,6 +458,22 @@
|
||||
"lon": 150.309278,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 7059841233,
|
||||
"name": "Tunk's Landscapes",
|
||||
"type": "dept",
|
||||
"lat": -33.712966,
|
||||
"lon": 150.31851,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 7110813636,
|
||||
"name": "Aquip Supplies",
|
||||
"type": "dept",
|
||||
"lat": -33.712766,
|
||||
"lon": 150.320997,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 7110813637,
|
||||
"name": "Steven Walter Children's Cancer Foundation Warehouse",
|
||||
@ -151,6 +482,78 @@
|
||||
"lon": 150.321286,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 7882541494,
|
||||
"name": "BP Shop",
|
||||
"type": "milkbar",
|
||||
"lat": -33.706897,
|
||||
"lon": 150.316949,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 8175995312,
|
||||
"name": "On The Soul Side",
|
||||
"type": "milkbar",
|
||||
"lat": -33.711672,
|
||||
"lon": 150.3122,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 8303103752,
|
||||
"name": "Mountain Herbs",
|
||||
"type": "stall",
|
||||
"lat": -33.701038,
|
||||
"lon": 150.306761,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 8558905196,
|
||||
"name": "Heroy Asian Grocery",
|
||||
"type": "dept",
|
||||
"lat": -33.717511,
|
||||
"lon": 150.310724,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 8791558114,
|
||||
"name": "Cafe Del Ra",
|
||||
"type": "milkbar",
|
||||
"lat": -33.712238,
|
||||
"lon": 150.310646,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 8964690649,
|
||||
"name": "Metromix Concrete",
|
||||
"type": "dept",
|
||||
"lat": -33.702945,
|
||||
"lon": 150.31863,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 8995679112,
|
||||
"name": "Mantra Uniforms",
|
||||
"type": "dept",
|
||||
"lat": -33.707815,
|
||||
"lon": 150.310875,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9222666517,
|
||||
"name": "Unique Patisserie",
|
||||
"type": "milkbar",
|
||||
"lat": -33.716093,
|
||||
"lon": 150.31104,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9225814624,
|
||||
"name": "Bakers Delight",
|
||||
"type": "milkbar",
|
||||
"lat": -33.716238,
|
||||
"lon": 150.310619,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9231634025,
|
||||
"name": "Little Lost Bookshop",
|
||||
@ -159,6 +562,22 @@
|
||||
"lon": 150.310835,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9287300149,
|
||||
"name": "High Q Trades",
|
||||
"type": "dept",
|
||||
"lat": -33.712312,
|
||||
"lon": 150.318904,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9413746790,
|
||||
"name": "Little Paris Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.71444,
|
||||
"lon": 150.311091,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9577859712,
|
||||
"name": "B'COS Agora Second Hand Bookshop",
|
||||
@ -167,6 +586,22 @@
|
||||
"lon": 150.311173,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9584302786,
|
||||
"name": "Sip Sip Drink Bar",
|
||||
"type": "milkbar",
|
||||
"lat": -33.712736,
|
||||
"lon": 150.311999,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9584302788,
|
||||
"name": "Bring the Jungle",
|
||||
"type": "stall",
|
||||
"lat": -33.712986,
|
||||
"lon": 150.311957,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 9791871398,
|
||||
"name": "The Velvet Fog",
|
||||
@ -175,6 +610,22 @@
|
||||
"lon": 150.311566,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 11242865086,
|
||||
"name": "Odd Mountains Oddities",
|
||||
"type": "dept",
|
||||
"lat": -33.7167,
|
||||
"lon": 150.310928,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 11242941181,
|
||||
"name": "Tibetan Three Sisters",
|
||||
"type": "dept",
|
||||
"lat": -33.715893,
|
||||
"lon": 150.311092,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 11242974232,
|
||||
"name": "Sanctus Catholic Books and Gift Shop",
|
||||
@ -182,6 +633,38 @@
|
||||
"lat": -33.715718,
|
||||
"lon": 150.31095,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 12443820960,
|
||||
"name": "Katoomba Falls Kiosk",
|
||||
"type": "milkbar",
|
||||
"lat": -33.726555,
|
||||
"lon": 150.30399,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 12475599270,
|
||||
"name": "Catalina Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.715151,
|
||||
"lon": 150.303325,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 12500043180,
|
||||
"name": "Fidelity",
|
||||
"type": "milkbar",
|
||||
"lat": -33.716268,
|
||||
"lon": 150.310835,
|
||||
"suburb": "Katoomba"
|
||||
},
|
||||
{
|
||||
"id": 12642112599,
|
||||
"name": "Good Fat Pastry",
|
||||
"type": "milkbar",
|
||||
"lat": -33.716468,
|
||||
"lon": 150.310982,
|
||||
"suburb": "Katoomba"
|
||||
}
|
||||
],
|
||||
"roads": [
|
||||
|
||||
@ -18,11 +18,30 @@
|
||||
"maxLon": 151.1931100389657
|
||||
},
|
||||
"counts": {
|
||||
"raw": 19,
|
||||
"shops": 18,
|
||||
"raw": 233,
|
||||
"shops": 72,
|
||||
"heroes": 18,
|
||||
"texture": 54,
|
||||
"textureDropped": 156,
|
||||
"roads": 1086
|
||||
},
|
||||
"shops": [
|
||||
{
|
||||
"id": 62203508,
|
||||
"name": "Bunnings Warehouse",
|
||||
"type": "dept",
|
||||
"lat": -33.905746,
|
||||
"lon": 151.19369,
|
||||
"suburb": "Alexandria"
|
||||
},
|
||||
{
|
||||
"id": 279681996,
|
||||
"name": "Woolworths Metro",
|
||||
"type": "dept",
|
||||
"lat": -33.89859,
|
||||
"lon": 151.181704,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 291725581,
|
||||
"name": "Kidstuff",
|
||||
@ -31,13 +50,93 @@
|
||||
"lon": 151.176459,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 292127221,
|
||||
"name": "The Hospitality Store",
|
||||
"type": "dept",
|
||||
"lat": -33.88782,
|
||||
"lon": 151.17241,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 305516372,
|
||||
"name": "IGA",
|
||||
"type": "dept",
|
||||
"lat": -33.89597,
|
||||
"lon": 151.180575,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 423218371,
|
||||
"name": "Foodcraft",
|
||||
"type": "milkbar",
|
||||
"lat": -33.90308,
|
||||
"lon": 151.185224,
|
||||
"suburb": "Erskineville"
|
||||
},
|
||||
{
|
||||
"id": 605984545,
|
||||
"name": "EB Games",
|
||||
"type": "video",
|
||||
"lat": -33.90641,
|
||||
"lon": 151.171739,
|
||||
"suburb": "Newtown"
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984546,
|
||||
"name": "Nextra",
|
||||
"type": "milkbar",
|
||||
"lat": -33.906418,
|
||||
"lon": 151.171836,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984562,
|
||||
"name": "Lowes",
|
||||
"type": "dept",
|
||||
"lat": -33.906876,
|
||||
"lon": 151.171753,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984563,
|
||||
"name": "Kimmy Jewellery",
|
||||
"type": "dept",
|
||||
"lat": -33.906791,
|
||||
"lon": 151.171765,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984565,
|
||||
"name": "Forcast",
|
||||
"type": "dept",
|
||||
"lat": -33.906889,
|
||||
"lon": 151.17189,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984566,
|
||||
"name": "Bras N Things",
|
||||
"type": "dept",
|
||||
"lat": -33.907022,
|
||||
"lon": 151.171843,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984567,
|
||||
"name": "Sussan",
|
||||
"type": "dept",
|
||||
"lat": -33.907073,
|
||||
"lon": 151.171834,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984571,
|
||||
"name": "Sunset Flowers",
|
||||
"type": "stall",
|
||||
"lat": -33.907283,
|
||||
"lon": 151.171871,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984580,
|
||||
@ -45,6 +144,118 @@
|
||||
"type": "toy",
|
||||
"lat": -33.907371,
|
||||
"lon": 151.172438,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984595,
|
||||
"name": "Sergio's Cake Shop",
|
||||
"type": "milkbar",
|
||||
"lat": -33.906821,
|
||||
"lon": 151.172217,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 605984610,
|
||||
"name": "Espresso Brothers",
|
||||
"type": "milkbar",
|
||||
"lat": -33.906382,
|
||||
"lon": 151.172126,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 1039467648,
|
||||
"name": "Storeroom Vintage",
|
||||
"type": "dept",
|
||||
"lat": -33.898406,
|
||||
"lon": 151.176285,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 1039467672,
|
||||
"name": "Natural Fit Footwear",
|
||||
"type": "dept",
|
||||
"lat": -33.90725,
|
||||
"lon": 151.172143,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 1039555349,
|
||||
"name": "The Athlete's Foot",
|
||||
"type": "dept",
|
||||
"lat": -33.906646,
|
||||
"lon": 151.17215,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 1079380693,
|
||||
"name": "Coffee @ Fisher",
|
||||
"type": "milkbar",
|
||||
"lat": -33.886833,
|
||||
"lon": 151.190043,
|
||||
"suburb": "Darlington"
|
||||
},
|
||||
{
|
||||
"id": 1732566722,
|
||||
"name": "Welcome Mart",
|
||||
"type": "dept",
|
||||
"lat": -33.89993,
|
||||
"lon": 151.184575,
|
||||
"suburb": "Erskineville"
|
||||
},
|
||||
{
|
||||
"id": 1735908953,
|
||||
"name": "Boh\u00e4us Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.905708,
|
||||
"lon": 151.191348,
|
||||
"suburb": "Alexandria"
|
||||
},
|
||||
{
|
||||
"id": 2125897845,
|
||||
"name": "Pastizzi Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.903197,
|
||||
"lon": 151.179532,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 2136793910,
|
||||
"name": "Store Espresso",
|
||||
"type": "milkbar",
|
||||
"lat": -33.890334,
|
||||
"lon": 151.176325,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 2136793911,
|
||||
"name": "Gather on the Green",
|
||||
"type": "milkbar",
|
||||
"lat": -33.890355,
|
||||
"lon": 151.176263,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 2163387594,
|
||||
"name": "Grounded 2050",
|
||||
"type": "milkbar",
|
||||
"lat": -33.887901,
|
||||
"lon": 151.180526,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 2170430692,
|
||||
"name": "Carslaw Kitchen",
|
||||
"type": "milkbar",
|
||||
"lat": -33.888238,
|
||||
"lon": 151.190481,
|
||||
"suburb": "Darlington"
|
||||
},
|
||||
{
|
||||
"id": 2365225259,
|
||||
"name": "Ken Neale Overflow",
|
||||
"type": "dept",
|
||||
"lat": -33.90187,
|
||||
"lon": 151.178671,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
@ -55,6 +266,30 @@
|
||||
"lon": 151.179525,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 2787084005,
|
||||
"name": "Amazing Paints",
|
||||
"type": "dept",
|
||||
"lat": -33.891631,
|
||||
"lon": 151.176271,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 2965437480,
|
||||
"name": "Cafe Abercrombie",
|
||||
"type": "milkbar",
|
||||
"lat": -33.892142,
|
||||
"lon": 151.193024,
|
||||
"suburb": "Darlington"
|
||||
},
|
||||
{
|
||||
"id": 2968343588,
|
||||
"name": "Bakerman",
|
||||
"type": "milkbar",
|
||||
"lat": -33.899893,
|
||||
"lon": 151.183961,
|
||||
"suburb": "Erskineville"
|
||||
},
|
||||
{
|
||||
"id": 3278485277,
|
||||
"name": "The Vintage Record",
|
||||
@ -71,6 +306,110 @@
|
||||
"lon": 151.171395,
|
||||
"suburb": "Stanmore"
|
||||
},
|
||||
{
|
||||
"id": 3278493016,
|
||||
"name": "Wildwood Designs",
|
||||
"type": "dept",
|
||||
"lat": -33.887904,
|
||||
"lon": 151.169934,
|
||||
"suburb": "Stanmore"
|
||||
},
|
||||
{
|
||||
"id": 3278493018,
|
||||
"name": "Inspired Design Furniture",
|
||||
"type": "dept",
|
||||
"lat": -33.887902,
|
||||
"lon": 151.170079,
|
||||
"suburb": "Stanmore"
|
||||
},
|
||||
{
|
||||
"id": 3278509468,
|
||||
"name": "Recharging",
|
||||
"type": "milkbar",
|
||||
"lat": -33.887515,
|
||||
"lon": 151.167686,
|
||||
"suburb": "Annandale"
|
||||
},
|
||||
{
|
||||
"id": 3951219159,
|
||||
"name": "Miracle",
|
||||
"type": "dept",
|
||||
"lat": -33.892823,
|
||||
"lon": 151.186108,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 4860774437,
|
||||
"name": "Newtown Garden Market",
|
||||
"type": "stall",
|
||||
"lat": -33.903009,
|
||||
"lon": 151.179679,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 5203491923,
|
||||
"name": "Cynthia's Caf\u00e9",
|
||||
"type": "milkbar",
|
||||
"lat": -33.908747,
|
||||
"lon": 151.191977,
|
||||
"suburb": "Alexandria"
|
||||
},
|
||||
{
|
||||
"id": 5205362421,
|
||||
"name": "Little Vietnam Roll & Juice",
|
||||
"type": "milkbar",
|
||||
"lat": -33.906344,
|
||||
"lon": 151.181132,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 5299091858,
|
||||
"name": "Hui Bro\u2019s Cafe",
|
||||
"type": "milkbar",
|
||||
"lat": -33.898095,
|
||||
"lon": 151.179152,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 5300089045,
|
||||
"name": "Handcraft Specialty Coffee",
|
||||
"type": "milkbar",
|
||||
"lat": -33.892575,
|
||||
"lon": 151.185688,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 5599458217,
|
||||
"name": "The Floral Decorator",
|
||||
"type": "stall",
|
||||
"lat": -33.899566,
|
||||
"lon": 151.184195,
|
||||
"suburb": "Erskineville"
|
||||
},
|
||||
{
|
||||
"id": 5839239307,
|
||||
"name": "Luke Avenue",
|
||||
"type": "milkbar",
|
||||
"lat": -33.897984,
|
||||
"lon": 151.175225,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 5905712358,
|
||||
"name": "The Coffee Nook on Swanson",
|
||||
"type": "milkbar",
|
||||
"lat": -33.900301,
|
||||
"lon": 151.189403,
|
||||
"suburb": "Erskineville"
|
||||
},
|
||||
{
|
||||
"id": 5931284416,
|
||||
"name": "Patisserie Petunia",
|
||||
"type": "milkbar",
|
||||
"lat": -33.90509,
|
||||
"lon": 151.18052,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 5931284422,
|
||||
"name": "Towers Antiques",
|
||||
@ -95,13 +434,29 @@
|
||||
"lon": 151.179587,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 6283737899,
|
||||
"name": "Dangerfield",
|
||||
"type": "dept",
|
||||
"lat": -33.895217,
|
||||
"lon": 151.181947,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 6564462487,
|
||||
"name": "Marani Deli",
|
||||
"type": "milkbar",
|
||||
"lat": -33.895992,
|
||||
"lon": 151.182698,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 6901192228,
|
||||
"name": "Co-op",
|
||||
"type": "book",
|
||||
"lat": -33.890884,
|
||||
"lon": 151.192028,
|
||||
"suburb": "Newtown"
|
||||
"suburb": "Darlington"
|
||||
},
|
||||
{
|
||||
"id": 9518337417,
|
||||
@ -111,6 +466,22 @@
|
||||
"lon": 151.166497,
|
||||
"suburb": "Annandale"
|
||||
},
|
||||
{
|
||||
"id": 9572458384,
|
||||
"name": "Budha Bowl",
|
||||
"type": "milkbar",
|
||||
"lat": -33.898699,
|
||||
"lon": 151.176397,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 9776428741,
|
||||
"name": "K\u00fcrt\u0151sh",
|
||||
"type": "milkbar",
|
||||
"lat": -33.907897,
|
||||
"lon": 151.171833,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 9888616491,
|
||||
"name": "Haze Guitars",
|
||||
@ -127,13 +498,29 @@
|
||||
"lon": 151.178408,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 11984912425,
|
||||
"name": "Provocator",
|
||||
"type": "dept",
|
||||
"lat": -33.901201,
|
||||
"lon": 151.178441,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 12200892725,
|
||||
"name": "Feather & Bone",
|
||||
"type": "milkbar",
|
||||
"lat": -33.909398,
|
||||
"lon": 151.168471,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 12958032466,
|
||||
"name": "St Luke\u2019s Op Shop",
|
||||
"type": "opshop",
|
||||
"lat": -33.898898,
|
||||
"lon": 151.170272,
|
||||
"suburb": "Newtown"
|
||||
"suburb": "Enmore"
|
||||
},
|
||||
{
|
||||
"id": 13122105023,
|
||||
@ -143,6 +530,22 @@
|
||||
"lon": 151.176713,
|
||||
"suburb": "Camperdown"
|
||||
},
|
||||
{
|
||||
"id": 13341304001,
|
||||
"name": "AS Colour",
|
||||
"type": "dept",
|
||||
"lat": -33.895051,
|
||||
"lon": 151.181701,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 13585970805,
|
||||
"name": "Numero Uno Coffee Roasters",
|
||||
"type": "milkbar",
|
||||
"lat": -33.908693,
|
||||
"lon": 151.18052,
|
||||
"suburb": "St Peters"
|
||||
},
|
||||
{
|
||||
"id": 13686752819,
|
||||
"name": "Better Read Than Dead",
|
||||
@ -165,7 +568,39 @@
|
||||
"type": "record",
|
||||
"lat": -33.898666,
|
||||
"lon": 151.174207,
|
||||
"suburb": "Enmore"
|
||||
},
|
||||
{
|
||||
"id": 13719824202,
|
||||
"name": "A.P Town",
|
||||
"type": "milkbar",
|
||||
"lat": -33.893929,
|
||||
"lon": 151.183827,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 13785846501,
|
||||
"name": "The Happy Herb Shop Newtown",
|
||||
"type": "milkbar",
|
||||
"lat": -33.898379,
|
||||
"lon": 151.178005,
|
||||
"suburb": "Newtown"
|
||||
},
|
||||
{
|
||||
"id": 13919280070,
|
||||
"name": "Tonton Bread",
|
||||
"type": "milkbar",
|
||||
"lat": -33.90484,
|
||||
"lon": 151.17338,
|
||||
"suburb": "Marrickville"
|
||||
},
|
||||
{
|
||||
"id": 13919369194,
|
||||
"name": "Mamuki",
|
||||
"type": "milkbar",
|
||||
"lat": -33.898789,
|
||||
"lon": 151.173092,
|
||||
"suburb": "Enmore"
|
||||
}
|
||||
],
|
||||
"roads": [
|
||||
|
||||
Loading…
Reference in New Issue
Block a user