← Back to WebGIS

WebGIS projects

Fast, clear interactive web maps and spatial dashboards, from PostGIS to the browser.

Showing 4 of 4 projects.

AssetTrack | Utility Asset Management

Map-based asset inventory, work orders and compliance for utilities in Kenya and East Africa.

DjangoGeoDjangoPostGISLeafletWork Orders
AssetTrack | Utility Asset Management screenshot

Draw and edit point, line and polygon assets directly on the map, run radius and bounding-box searches plus flood-zone overlap checks, and toggle layers including a heatmap overlay. Work orders auto-assign the nearest available technician via PostGIS distance queries, while lifecycle timelines, DBSCAN failure clusters, theft and vandalism geofence alerts, QR inventory reconciliation, compliance reports with CSV export, cost clustering, depreciation schedules, impact simulation, vegetation encroachment tracking, community reporting with hotspot clustering, inspection route optimization and dig-permit conflict detection cover the full asset workflow. Django templates serve the dashboard with a glassmorphism UI that collapses to bottom tabs on mobile. Demo uses curated sample assets for evaluation.

Standalone page ↗

FleetGuard | Fleet Management Dashboard

Live tracking, geofencing, SACCO management and payments for Kenyan logistics.

Next.jsPostGISLeafletSocket.IO
FleetGuard | Fleet Management Dashboard screenshot

Vehicles broadcast positions every 2 seconds over Socket.IO with smooth interpolated markers, 5-second polling fallback and 1-hour history trails. Operators draw geofence polygons with per-zone SMS or alerts checked server-side every 30 seconds, search places via Mapbox geocoding, find the nearest vehicle to any click, and view delay and rating heatmaps plus clickable county overlays with vehicle counts. SACCOs get member roles, invitations, prepaid wallets with STK top-ups and subscription plans, alongside maintenance scheduling, proof of delivery with codes, driver leaderboards, surge pricing zones, ride matching, insurance quotes and policies, SMS alerts and a USSD gateway for non-smartphone users. Demo runs on simulated fleet positions for evaluation.

Standalone page ↗

Obstacle Compliance & Airport GIS System

Prototype web GIS for checking structures against aerodrome obstacle limitation surfaces in Kenya.

DjangoGeoDjangoPostGISLeafletICAO Annex 14
Obstacle Compliance & Airport GIS System screenshot

Personal prototype, not an official KCAA system. Models ICAO Annex 14 Vol I (8th ed.) surfaces — approach, inner approach, transitional, balked-landing, take-off-climb, inner horizontal, conical, outer horizontal — modelled on KCAA advisory circulars AC-AGA005C (June 2024) and AC-AGA032A (Feb 2026). Certificates are demonstration outputs.

Data sources are public inputs only (OpenStreetMap basemap, public aerodrome lists and published ICAO/KCAA surface definitions). Surface geometry follows the ICAO Annex 14 parameters in code and is a demonstration model, not a certified survey.

Version history

  • v1 · Jan 2025 — Airport visualisation and query tool (Render)
  • v2 · mid-2025 — PostGIS migration and OLS modelling work
  • v3 · Present — OLS engine and approval workflow (Cloud Run)

Standalone page ↗

SiteSeeker | Retail Location Intelligence

Draw a polygon and get competitors, demographics, traffic and revenue estimates in one panel.

Next.jsPostGISLeafletLocation intelligence
SiteSeeker | Retail Location Intelligence screenshot

Modes cover polygon, buffer, cluster, franchise territories, retail leakage, supplier search, demographic forecast, site tours and partnership matching over competitors, demographics, traffic nodes, land use, foot traffic, roads, informal markets, commercial plots, community pins, suppliers and partnerships. Community members can submit opportunity and problem pins, groups manage wallets and invitations, and reports save, export to PDF and compare. Next.js 16 with TypeScript and Tailwind, Leaflet with draw tools, PostGIS on Aiven (SRID 4326), tested with Vitest. Demo uses curated sample data for competitors, demographics and traffic layers.

Standalone page ↗