<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

  <url>
    <loc>https://www.geo-dashboard.com/</loc>
    <lastmod>2026-06-01</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/base-layer-selection-switching/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/crs-projection-management/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/tile-vs-vector-rendering-strategies/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/zoompan-constraints-boundaries/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/cache-invalidation-strategies/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/incremental-data-processing/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/scheduler-selection-celery-apscheduler-cron/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/scheduled-map-rebuild-workflows/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/webhook-triggered-updates/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/iframe-embedding-isolation/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/layer-management-toggling/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/responsive-dashboard-layouts/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/static-vs-dynamic-export-methods/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/renderer-selection-folium-maplibre-pydeck/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/zoompan-constraints-boundaries/best-base-map-providers-for-high-contrast-geo-dashboards/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/crs-projection-management/implementing-epsg3857-vs-epsg4326-in-folium/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/tile-vs-vector-rendering-strategies/how-to-choose-between-raster-tiles-and-vector-tiles-for-web-dashboards/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/cache-invalidation-strategies/clearing-browser-tile-cache-after-python-data-updates/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/scheduled-map-rebuild-workflows/automating-nightly-geojson-rebuilds-with-github-actions/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/webhook-triggered-updates/triggering-map-refresh-via-supabase-webhooks/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/iframe-embedding-isolation/safely-embedding-folium-maps-in-react-dashboards/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/responsive-dashboard-layouts/making-python-generated-maps-responsive-on-mobile/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/static-vs-dynamic-export-methods/exporting-pydeck-visualizations-to-standalone-html/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/base-layer-selection-switching/configuring-maxbounds-and-minzoom-in-leaflet-via-python/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/base-layer-selection-switching/switching-between-openstreetmap-and-mapbox-basemaps-at-runtime/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/tile-vs-vector-rendering-strategies/generating-vector-tiles-from-postgis-with-tippecanoe/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/cache-invalidation-strategies/purging-cloudflare-cdn-tile-cache-from-a-python-pipeline/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/scheduled-map-rebuild-workflows/scheduling-map-rebuilds-with-apscheduler-in-flask/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/responsive-dashboard-layouts/fluid-map-heights-with-the-css-aspect-ratio-property/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/base-layer-selection-switching/adding-a-dark-mode-basemap-toggle-to-a-leaflet-dashboard/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/iframe-embedding-isolation/setting-content-security-policy-headers-for-embedded-folium-maps/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/webhook-triggered-updates/rebuilding-tiles-on-github-push-with-repository-dispatch/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/iframe-embedding-isolation/auto-resizing-embedded-maps-with-postmessage/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/static-vs-dynamic-export-methods/exporting-folium-maps-to-static-html-with-embedded-assets/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/crs-projection-management/reprojecting-utm-zone-data-to-web-mercator-with-pyproj/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/renderer-selection-folium-maplibre-pydeck/migrating-a-folium-map-to-maplibre-gl-for-large-datasets/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/incremental-data-processing/computing-geojson-feature-deltas-with-geopandas/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/layer-management-toggling/toggling-geojson-overlays-with-folium-layercontrol/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/static-vs-dynamic-export-methods/serving-pydeck-output-through-11ty-data-pipelines/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/scheduler-selection-celery-apscheduler-cron/running-map-rebuild-jobs-as-celery-tasks-with-redis/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/renderer-selection-folium-maplibre-pydeck/rendering-a-million-points-with-pydeck-scatterplotlayer/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/incremental-data-processing/appending-features-to-mbtiles-without-a-full-rebuild/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/layer-management-toggling/building-a-custom-layer-switcher-in-pydeck/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/python-to-web-generation-workflows/static-vs-dynamic-export-methods/deploying-generated-map-bundles-with-github-actions-cicd/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/scheduler-selection-celery-apscheduler-cron/choosing-cron-vs-apscheduler-for-single-server-dashboards/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/core-mapping-architecture-rendering/zoompan-constraints-boundaries/locking-map-panning-to-a-country-bounding-box-in-maplibre/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://www.geo-dashboard.com/data-refresh-automation-pipelines/cache-invalidation-strategies/versioning-tile-urls-with-content-hashes-for-cache-busting/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

</urlset>

