Profile
Back to NewsBack
GitHub Trending 3 min
Reader Mode
microsoft/haste: High Speed Assessment and Satellite Tracking for Emergencies

microsoft/haste: High Speed Assessment and Satellite Tracking for Emergencies

16 hours ago

!HASTE banner

H A S T E

High-speed Assessment and Satellite Tracking for Emergencies

License: MIT</a> Python 3.11+</a> Docs</a>

HASTE is an AI-driven framework for rapid disaster assessment using satellite and remote sensing data. It automates geospatial analysis with machine learning to produce accurate disaster maps, and provides a user-friendly web interface so that non-technical users can generate critical insights alongside disaster experts.

Quick Start

The fastest way to run HASTE locally is with Docker Compose, which starts the full stack — API, queue workers, tile server, storage emulator, and UI — with no Azure subscription required.

Prefer to let an AI agent do it? QUICKSTART.md is a phased, verify-gated runbook written for coding agents. Point Claude Code or GitHub Copilot at it with a prompt like "Using QUICKSTART.md, stand up and start a local instance of HASTE" and it will run the steps, handle platform quirks (e.g. Apple Silicon), and stop at each health-check gate.

Prerequisites: Docker and Docker Compose

git clone https://github.com/microsoft/haste.git
cd haste
docker compose -f docker/docker-compose.yml up

| Service | URL | |---------|-----| | UI | http://localhost:4280 | | REST API | http://localhost:7071/api/ | | TiTiler tile server | http://localhost:8000 | | Azurite storage emulator | http://localhost:10000 |

Note: This stack is for local development and evaluation only — it uses development
defaults (in-memory storage emulator, disabled auth, wildcard CORS) that aren't suitable
for production. To stand up a production environment on Azure, follow the
Deployment Guide and
Configuration Guide.

See it in action

HASTE demo

Documentation

Full documentation is published at microsoft.github.io/haste:

Using HASTE

  • User Guide — create projects, add imagery, label, train, and assess damage end to end
Setup & deployment Reference
  • Architecture — how the components fit together
  • API Reference — REST, queue, and tile-server APIs
  • Releasing — versioning and tagging conventions for the product, the hastegeo wheel, and Docker images
Source for the docs lives in docs/ and is built with Jupyter Book.

Architecture

┌─────────────────────────────────────────────────────────────────┐
│                         React UI (Vite)                          │
│  Projects · Labeling Tool · Visualizer · Admin · Model Catalog   │
└───────────────────────────┬─────────────────────────────────────┘
                            │ HTTP
┌───────────────────────────▼─────────────────────────────────────┐
│               Azure Static Web Apps / SWA CLI                    │
└──────┬────────────────────────────────────────────┬─────────────┘
       │ /api/*                                     │ tile requests
┌──────▼──────────────┐                    ┌────────▼─────────────┐
│   hastefuncapi       │                    │   titilerfuncapi     │
│   (41 HTTP routes)   │                    │   (TiTiler/FastAPI)  │
│   Azure Functions    │                    │   COG tile serving   │
└──────┬──────────────┘                    └──────────────────────┘
       │ Queue messages
┌──────▼──────────────┐
│   hastefuncqueues    │
│   (7 queue triggers) │
│   Azure Functions    │
└──────┬──────────────┘
       │
┌──────▼──────────────────────────────────────────────────────────┐
│                    hastegeo core library                          │
│  Config · Models · Processors · Data Layers · Runners · Utils    │
└──────┬───────────┬───────────┬───────────┬──────────────────────┘
       │           │           │           │
  ┌────▼───┐  ┌───▼────┐  ┌──▼───┐  ┌───▼──────────┐
  │ Blob   │  │ Cosmos │  │ Data │  │ Azure Batch  │
  │ Storage│  │ DB     │  │ Lake │  │ (GPU pools)  │
  └────────┘  └────────┘  └──────┘  └──────────────┘

Components

| Component | Technology | Description | |-----------|-----------|-------------| | UI | React + Vite | Single-page app for project management, labeling, and visualization | | REST API (hastefuncapi) | Python Azure Functions | HTTP endpoints for CRUD operations | | Queue Workers (hastefuncqueues) | Python Azure Functions | Queue-triggered functions for async processing | | Tile Server (titilerfuncapi) | TiTiler + FastAPI | Cloud Optimized GeoTIFF tile serving | | Core Library (hastegeo) | Python package | Shared models, processors, data layers, and utilities |

Contributing

We welcome contributions! Please read CONTRIBUTING.md for coding standards, the pull request process, and the Contributor License Agreement requirement.

License

This project is licensed under the MIT License — see LICENSE.txt for details.

Third-Party Software

This project includes third-party components. See THIRD-PARTY-NOTICES.md for details.

Chat with me