Design Spokane lot maps

How to use the lot map viewer

The viewer turns a GeoJSON file of lots into an interactive satellite map with a lot list, availability counts, status colors, and 3D view. You don't install anything. You point the viewer at your file with a web address.

Open the sample mapJump to parameters

Quick start

  1. Put your GeoJSON file somewhere on the web that allows other sites to load it (see Hosting your file).
  2. Add its address after ?geojson=:
    https://maps.designspokane.com/?geojson=https://your-site.com/lots.geojson
  3. Open that link. The map zooms to your lots automatically.

To add more options, join them with &:

https://maps.designspokane.com/?geojson=https://your-site.com/lots.geojson&title=Woodman%20Subdivision&brand=Acme%20Homes&basemap=streets

Query string parameters

Only geojson is required. Parameter names are lowercase.

ParameterWhat it doesValuesDefault
geojsonRequired. The web address of your GeoJSON file.A full https:// addressNone. The map shows an error without it.
titleThe large heading at the top of the side panel.Any textThe name field inside your GeoJSON (underscores and dashes become spaces, and words are capitalized). If that's missing, "Homesite map".
brandThe small uppercase label above the title, such as the builder or agency name.Any text"Homesite Viewer"
subtitleA short line of gray text under the title, such as the city or a phone number.Any textBlank
basemapThe background map shown when the page opens. Visitors can still switch it with the SAT button.satellite or streetssatellite
sidebarHides the side panel so only the map shows, which is useful inside an iframe on another website.0, false, no, off, or hide hides itShown
embedDoes the same thing as sidebar=0.1Off
If a value has spaces or symbols, encode it: a space becomes %20 and & becomes %26. For example, title=Smith%20%26%20Sons shows "Smith & Sons". The geojson address should be encoded too if it contains its own ? or &.

Examples

A basic map

https://maps.designspokane.com/?geojson=https://lotmap-samples.vercel.app/woodman.geojson

Custom title and branding

https://maps.designspokane.com/?geojson=https://lotmap-samples.vercel.app/woodman.geojson&title=Woodman%20Subdivision&brand=Design%20Spokane&subtitle=Hayden%2C%20Idaho

Street map background

https://maps.designspokane.com/?geojson=https://lotmap-samples.vercel.app/woodman.geojson&basemap=streets

Embedding on your own website

Paste this into your web page. It shows the map without the side panel.

<iframe
  src="https://maps.designspokane.com/?geojson=https://your-site.com/lots.geojson&sidebar=0"
  width="100%" height="600" style="border:0" loading="lazy"
  title="Lot map"></iframe>

Using the map

Preparing your GeoJSON

The file should be a standard GeoJSON FeatureCollection with longitude and latitude coordinates (WGS 84, the default for GeoJSON). Each lot is a Polygon or MultiPolygon feature. The viewer shows your shapes exactly as drawn and never changes the geometry.

Lot properties the viewer reads

None of these are strictly required, but the more you include, the better the list and popups look. Common alternate names are accepted.

PropertyAlso acceptedUsed for
lotlot_numThe lot's ID and map label. If block is also set, the ID becomes block-lot, such as 25-3, so lot numbers can repeat across blocks.
blockShown in the list and popup, and combined with the lot number for a unique ID.
labelnameThe popup heading. If missing, the popup says "Lot" plus the ID.
statusSets the lot's color (see below). If missing, the lot counts as available.
acresarea_acres, acreageSize in acres.
sqftplat_sf, area_sf, geojson_sf, area_sf_plattedSize in square feet.

Status values and colors

Status is not case-sensitive. Any other value is shown as written with the available color.

ColorStatusAlso accepted
GreenavailableAlso used when status is missing
Yellowpendinghold
Bluereserved
Redsoldunavailable
Graybuiltexisting

Streets and the subdivision boundary

Streets and boundaries are drawn differently from lots and are left out of the lot list and counts.

Example feature

{
  "type": "FeatureCollection",
  "name": "woodman_subdivision",
  "features": [
    {
      "type": "Feature",
      "properties": { "block": 25, "lot": 3, "status": "available", "acres": 0.21, "sqft": 9150 },
      "geometry": { "type": "Polygon", "coordinates": [[[-116.7801, 47.7869], [-116.7797, 47.7869], [-116.7797, 47.7866], [-116.7801, 47.7866], [-116.7801, 47.7869]]] }
    },
    {
      "type": "Feature",
      "properties": { "feature_type": "street", "name": "Burdock Loop" },
      "geometry": { "type": "Polygon", "coordinates": [[[-116.7802, 47.7866], [-116.7796, 47.7866], [-116.7796, 47.7865], [-116.7802, 47.7865], [-116.7802, 47.7866]]] }
    }
  ]
}

Hosting your file

The browser loads your GeoJSON directly, so the server hosting it has to allow cross-site loading (this is called CORS). The server must send the header Access-Control-Allow-Origin: *, or allow https://maps.designspokane.com specifically. Options that work:

Links to Google Drive, Dropbox, and OneDrive usually don't work, because they open a download page instead of the file itself. Changes to the file show up the next time someone opens or reloads the map, so you can update lot statuses by editing the file.

Troubleshooting

What you seeWhat to do
"No GeoJSON given"The link is missing ?geojson=. Add your file's address.
"Could not load GeoJSON (HTTP 404)" or another codeThe address is wrong or the file isn't public. Open the address by itself in a browser to check it.
"Failed to fetch" or a similar network errorThe server hosting your file probably blocks cross-site loading. See Hosting your file.
Lots appear in the wrong place, such as off the coast of AfricaThe coordinates are in a local projection, such as a state plane system, instead of longitude and latitude. Re-export the file as WGS 84 (EPSG:4326).
Everything shows as availableAdd a status property to each lot.
A blank page on iPhoneOpen the link in Safari rather than a preview inside Mail or Files.