hayley-ssg-template

A minimal Dioxus 0.7 starter with SSG + mise + Tailwind.

Manage location

This is the single place to refresh providers, compare snapshots, and choose what active_location() returns. Feature demos (GeoJS, Geolocation, Geocoder, Weather, Sun) only read or write one provider — they do not duplicate this UI.

SSG & hydration

Nothing fetches on mount. Refresh buttons run client-side requests after you click. Stored values hydrate from use_persistent after the first paint.

Active location

Auto picks the most recently updated provider (last-write-wins). Or pin a specific provider (or a geocoder backend) — downstream demos read active_location().

No active location — refresh at least one provider below.

Providers

GeoJS (IP-based)

No snapshot yet — click Refresh.

Browser geolocation

No snapshot yet — click Refresh.

Geocoder

US ZIP via Zippopotam.us; city, state, or place with debounced autocomplete via Photon (OpenStreetMap). Photon can rank results near a configurable lat/lon bias. Each backend keeps its own stored pin so you can compare.

Photon search bias

Bias toward 39.7456, -97.0892 (mid-CONUS / Kansas demo preset).

Zippopotam.us

No snapshot for this backend yet.

Photon (OSM)

No snapshot for this backend yet.

No snapshots yet — geocode a ZIP or place above.

Map refine

Placeholder for a future demo (map marker refine).

No snapshot yet — click Refresh.

Persisted under hayley-ssg-template/demo/location-v2 via dioxus_sdk_storage::use_persistent. Values may appear shortly after hydration.

Built with Dioxus. Static output goes to target/dx/<app>/release/web/public/.