Sustainability · Urban planning · 2026

Althil

Urban thermal comfort decision support

Suggests where urban planners should add shade, from the sun’s path, the heat at a site and a photo of it.

Role
Backend developer & cloud architecture contributor
Status
Hackathon prototype
Year
2026
Code
github.com/Abdulel3h/Althil
Concept visualizationIllustrative sketch of the idea — not a product screenshot.

In brief

  1. 01The problem

    Street heat shifts with the sun’s path, and static plans rarely account for it.

  2. 02What was built

    One FastAPI app computes sun position and a 0–100 heat-risk score, recommends a shade type and exports a report, in a container ready for Cloud Run.

  3. 03My role

    I built the backend and merged the analysis services into one deployable app, as part of a hackathon team.

  4. 04Outcome

    A hackathon prototype with public code. Urban density is simulated, and no measured cooling effect is claimed.

How it works

  1. 01Input

    Map location

  2. 02Processing

    Sun position & heat score

  3. 03Intelligence

    Site-photo analysis

  4. 04Output

    Shade recommendations & report

Decisions that shaped it

  • One container, built for Cloud Run

    The map, the API and the reports are served by a single stateless FastAPI app packaged for Cloud Run, so the team could deploy the whole system as one unit inside the hackathon. BigQuery, Cloud Storage and Vertex AI stayed in the design, not the code.

  • Compute what can be computed, label the rest

    The sun’s position is computed exactly with pysolar. Urban density, candidate placements and cooling estimates are simulated or estimated, and the README, the report and the PDF say so.

  • Shade type from sun geometry

    A high sun calls for horizontal cover and a low sun for vertical screening, so the recommendation is a kind of shade, not only a score.

The honest part

Not claimed

No city deployment, no measured temperature reduction and no BigQuery, Cloud Storage or Vertex AI integration are claimed.

Limits today

  • Urban density is simulated from the coordinates, and candidate placements and cooling figures are estimates.
  • Sun position always uses the current time; there is no date picker and no night-time handling.
  • Image analysis uses colour thresholds, not a trained model, and the assistant panel gives scripted replies.
  • Recommendations have not been validated with planners or with field temperature data.

If it continued

  • Replace simulated density with land-cover data
  • Let planners choose the date and time and compare sun paths
  • Implement the designed BigQuery, Cloud Storage and Vertex AI components
  • Validate recommendations against measured street temperatures

Stack

Python · FastAPI · OpenCV · pysolar · Docker · Google Cloud Run

Cloud Run packaging is in the repository. The hackathon design also called for BigQuery, Cloud Storage and Vertex AI; those integrations are not implemented in the code.

“This project strengthened my experience in cloud-native design, data-driven decisions and cross-functional collaboration under real constraints.”
The full recordContext, constraints and engineering notes, as written.

Context

Team project built during the Intelligent Planet Hackathon, hosted by KFUPM in collaboration with Google Cloud.

The problem

Urban planners need to know where shade canopies will actually improve comfort. Heat exposure shifts with the sun’s path across the day and the year, which static plans rarely account for.

What was built

A map-based planning tool served by one FastAPI application. Selecting a point returns the sun’s altitude and azimuth, a 0–100 heat-risk score, a shade type chosen from the sun angle with candidate placements, and a report the planner can download as a PDF. A site photo adds an estimate of vegetation versus hard surface.

Outcome

A runnable hackathon prototype with public code: one FastAPI app that computes sun position and a heat-risk score for any map point, recommends a shade type with candidate placements, analyses site photos and exports a PDF report, packaged as a container for Cloud Run. Service and API tests were added when the code was published. No city deployment and no measured cooling effect are claimed.

Constraints

  • Hackathon time limit
  • A team build — Abdulelah’s part was the backend, the cloud architecture and the service integration
  • No land-cover data, so urban density is simulated
  • One container, deployable to Cloud Run

Responsibilities

  • Built the FastAPI backend and its analysis endpoints
  • Integrated the sun-position, heat-scoring, image-analysis and report services into one deployable application
  • Packaged the application as one stateless container for Google Cloud Run
  • Supported the Google Cloud architecture direction of the design

Engineering notes

  • pysolar computes the sun’s altitude and azimuth for the selected point at the current time
  • A rule weights sun altitude and an urban-density factor into a 0–100 heat score with Low, Moderate and High levels
  • The sun angle selects the shade type — horizontal canopy, angled shade sail or vertical green wall — and three candidate points are placed around the selection
  • OpenCV colour thresholds estimate vegetation and grey-surface coverage in a site photo
  • One FastAPI app serves the map, the API and a PDF report, packaged as a container for Cloud Run