High-speed Assessment and Satellite Tracking for Emergencies
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.
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.
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
- Local Development — run the full stack locally with Docker Compose
- Deployment Guide — deploy to Azure with a single
azd up - Configuration Guide — all deployment settings
- Secure Configuration Guidance — production hardening checklist
Reference
- Architecture — how the components fit together
- API Reference — REST, queue, and tile-server APIs
Source for the docs lives in docs/ and is built with Jupyter Book.
┌─────────────────────────────────────────────────────────────────┐
│ 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) │
└────────┘ └────────┘ └──────┘ └──────────────┘
| 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 |
We welcome contributions! Please read CONTRIBUTING.md for coding standards, the pull request process, and the Contributor License Agreement requirement.
- Open an issue to report a bug or request a feature
- Start a discussion for questions or ideas
- Read the security policy before reporting vulnerabilities
This project is licensed under the MIT License — see LICENSE.txt for details.
This project includes third-party components. See THIRD-PARTY-NOTICES.md for details.

